大家好 obj-c中这个函数的同义词是什么?
void FuncOne(int a,int b);
由于
答案 0 :(得分:3)
简短回答是:
void FuncOne (int a , int b);
任何有效的C代码也是有效的Objective-C。作为奖励,任何有效的C ++代码也是有效的Objective-C ++。
对于更长的答案,我想使用一个更好的函数示例,使用Java类作为示例:
public class Rect {
public void setColor(int color, boolean animated);
}
这个类和它的方法在适当的Objective-C中是:
@interface Rect : NSObject {
}
-(void)setColor:(int)color animated:(BOOL)animated;
@end
我相信你可以找出转换,它可以很好地映射到1到1.在Objective-C世界中你需要注意的是每个方法参数都被命名。这似乎是一件小事,但是可以将代码的可读性提高1000倍!以Java中的上述示例为例:
myRect.setColor(Color.RED, true);
第二个参数是什么意思?是否启用了颜色,它是否表示颜色具有应该被尊重的alpha组件(对于大多数JavaME API是真的),或者颜色应该以动画方式设置?除非你在文档中查找,否则你无法确定。
对于正确的Objective-C,你永远不会遇到这个问题:
[myRect setColor:RED animated:YES];
你必须非常愚蠢,不要只是通过阅读代码来理解发生了什么。
学习Objective-C的最艰巨的任务不是学习将现在1到1的任何内容转换为Objective-C。你最艰巨的任务是学习Objective-C的思维模式,让你的工作效率更高。
答案 1 :(得分:1)
如果你想在objective-c代码中使用“独立”功能,那么你必须使用你在问题中发布的普通c函数。
如果您询问类方法,那么它们的语法如下(parameterNames是可选的):
// Instance method
- (ReturnType) methodName:(ParameterType1)parameter1 parameterName2:(ParameterType2)parameter2;
// Class method
+ (ReturnType) methodName:(ParameterType1)parameter1 parameterName2:(ParameterType2)parameter2;
答案 2 :(得分:-1)
- (void)funcOne:(int)a :(int)b