过去几天我一直在修改 C++,刚刚阅读了有关箭头成员选择运算符的内容。
在 C++ 中:
MyClass classObject;
MyClass *classPointer = &classObject;
classPointer->someFunction();
这就是箭头成员选择运算符用来访问函数的方式。
但是在 Objective-C 中:
MyViewController *vc = [[MyViewController alloc] init];
[vc someFunction];
我习惯写这样的代码。为什么这段代码是对的?现在在修改 C++ 之后,这对我来说没有意义。
对不起,如果这是一个愚蠢的问题。
想更好地理解这个概念。
最佳答案
你提到的第二段代码确实是Objective-C。
这里实际发生的是,您正在向 vc
发送消息以调用 someFunction
方法。
Objective-C 运行时处理这些消息。
如果您有兴趣,有关 Objective-C 运行时的 Apple 文档中概述了详细信息:Objective-C Runtime Programming Guide: Messaging
关于c++ - iOS中箭头成员选择算子的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17640185/