在 Objective-C 的 Wiki 页面中,有一个名为Messages的部分。它说编译时,Objective-C 不关心对象是否具有给定方法,因为任何人都可以向另一个对象发送消息。这是动态绑定。
在 C++ 中,obj->方法(参数);如果没有方法,那就错了。在 Objective-C 中,[obj 方法:参数];如果没有方法,也可以。
但是在我的日常编码中,使用 XCode,如果编译器找不到对象的公共方法,它甚至在构建之前总是提示错误。像这样,
“ClassName”没有可见的@interface 声明选择器“methodName”
我对这种“矛盾”感到有些困惑。如果问题很愚蠢,请原谅我。提前致谢。