c++ - iOS中箭头成员选择算子的使用

标签 c++ ios objective-c pointers

过去几天我一直在修改 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/

相关文章:

c++ - 如何知道设备何时从网络中删除使用 Bonjour C 库

c++ - 为什么 VC++2013 拒绝编译嵌套类型,在用作模板函数返回类型时使用 using 关键字使其可见?

ios - 涂黑 UIImageView 的区域或显示部分 View

ios - 在 iOS SDK 的应用程序模块中添加框架

c# - SQL Server 每秒可以处理多少个请求?

c++ - 为什么 Bison 中的简单语法规则不起作用?

ios - Watchkit,如何从父应用程序中的 View Controller 调用函数

javascript - 为什么一些导入的 React-Native Redux 操作会多次更改值并触发 onEffects?

iphone - 如何在当前类中实现另一个类的init?

ios - 单击由 nib 制作的自定义表格单元格时更改图像