【发布时间】:2025-11-26 15:15:02
【问题描述】:
我在 MyClass 中有一个 C 函数,可以从该类内部调用它。是否可以将 C 函数的 MyClass 实例作为消息发送?
暂时解释清楚
MyClass *obj = [[MyClass alloc] init];
[obj myCFunction];
给出编译器错误:“接收器类型 'MyClass' 例如消息未声明具有选择器 'myCFunction' 的方法”。 myCFunction 在 MyClass.h @interface 中声明,完整代码在 MyClass.m 中的 @implementation 之前,如果从 MyClass.m 的 @implementation 中调用,则可以正常工作。因此,C 函数是否是私有的,我可以将其公开,以便我可以将其作为消息发送到 MyClass 的实例吗?
我正在尝试编写单元测试来测试某些计算的每个阶段,因此简单地创建一个目标 c 方法来调用 c 函数似乎不是一个有效的解决方案。
任何帮助将不胜感激
【问题讨论】:
-
你不能发送一个C函数到一个Obj-C实例,他们会收到messages。
标签: objective-c c methods