为什么我收到此Objective-C错误消息:来自'objc_object*'的无效转换

Ala*_*ley 3 macos objective-c

这个错误消息让我感到困惑了一段时间:

从'objc_object*到'int'的无效转换

有问题的一行是这样的:

int iResult = [MyUtils utilsMemberFunc:param1,param2];
Run Code Online (Sandbox Code Playgroud)

Ala*_*ley 6

"to"类型是什么并不重要,重要的是您认识到此消息在此上下文中报告未找到utilsMemberFunc声明,并且由于Objective-C的动态绑定,它假设它返回objc_object*而不是声明utilsMemberFunc返回的类型.

那为什么不找到声明呢?因为','而不是':'来分隔参数.