Objective-C C样式函数

Mar*_*ore 3 c objective-c

在做Objective-c时,我是否必须编写如下函数:

- (int) someFunction: (int) a someParam: (int) b;
Run Code Online (Sandbox Code Playgroud)

或者我可以使用常规C风格:

void someFunction(int a, int b);
Run Code Online (Sandbox Code Playgroud)

如果我可以做C风格,那么在Objective-C风格中做这个有什么好处吗?

ser*_*gio 8

如果您愿意,可以使用常规C函数,因为Objective-C只是C的超集.

如果要使用Objective-C功能(如类,消息,继承等),则需要使用Objective-C语法...当然还要使用Cocoa/CocoaTouch SDK.

您可以在文件中混合使用Objective-C和C代码,并使用Objective-C方法调用纯C函数.您还可以通过直接访问Objective-C运行时层(例如,使用该objc_msgSend函数)从纯C函数调用Objective-C方法.


Jim*_*Jim 8

那不是Objective-C函数,它是一种方法.它可以访问实例的变量和其他方法.这两者并不相同.在大多数情况下,您应该使用Objective-C方法.为什么要使用C函数?你想做什么?