0
A
回答
-1
- (void)funcOne:(int)a :(int)b
1
如果你想使用Objective-C代码“独立”的功能,那么你必须只使用纯C函数,你在你的问题张贴。
如果你问类的方法,然后他们的语法如下(parameterNames可选):
// Instance method
- (ReturnType) methodName:(ParameterType1)parameter1 parameterName2:(ParameterType2)parameter2;
// Class method
+ (ReturnType) methodName:(ParameterType1)parameter1 parameterName2:(ParameterType2)parameter2;
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为True),还是颜色应该以动画方式设置?除非您在文档中查找,否则无法确定。仅仅通过阅读代码,因为它是
[myRect setColor:RED animated:YES];
你必须要非常愚蠢不明白是怎么回事:
对于正确的Objective-C,你永远不会有这个问题。
您在学习Objective-C中最难的任务不是学习将您现在知道的1到1转换成Objective-C。你最难的任务是学习Objective-C的思维方式,使你的工作效率更高。
相关问题
- 1. 这个数组在Obj-C中的同义词是什么
- 2. ObjC中的[NSString containsString:]这个函数使用了什么算法?
- 3. stringByAddingPercentEscapesUsingEncoding的反义词是什么?什么函数取出%转义?
- 4. 这些ObjC声明是如何不同的:即这是真的在做什么?
- 5. 在PHP中var-export函数的反义词是什么?
- 6. C中这个奇怪的函数定义语法是什么?
- 7. 这个应用函数定义中的get()和unit()是什么?
- 8. 这个函数定义中的“e”是什么意思?
- 9. 什么是(T * SimpleAsset)在这个函数
- 10. 这个键是什么:这个ajax函数中的值对是什么?
- 11. 什么是!在这个Ruby函数中意味着什么
- 12. mysql中in函数的反义词是什么?
- 13. 为什么这个函数有不同的答案,函数是不是在它定义的地方执行?
- 14. 为什么每个人在词义定义中表现不同?
- 15. $ rootScope在这个函数中做什么?
- 16. 这个逻辑语句的反义词是什么
- 17. 什么是objc的 - >?
- 18. 这个C++函数是什么意思?
- 19. python的ord()函数的反义词是什么?
- 20. “literal”这个词是什么意思?
- 21. “环境”这个词是什么意思?
- 22. “ - (void)”在这个函数声明中的含义是什么? ` - (void)awakeFromNib`
- 23. 这个代码在构造函数中有什么含义
- 24. vlfeat的sift函数中这个角度参数的含义是什么?
- 25. 类型和函数名称之间的词义是什么?
- 26. 在Python中涉及urllib2和BeautifulSoup的这个函数是什么?
- 27. 这个函数定义是什么意思?
- 28. “这个”这个词在下面这行jQuery中做了什么?
- 29. 这个函数做什么?
- 30. 这个指数在MATLAB中的含义是什么?
谢谢你的回答 – mamrezo 2010-11-17 13:41:44
接受他的回答! :-) – griotspeak 2010-11-17 15:10:48
这个答案在技术上是正确的,但从根本上说是错误的。第二个参数是未命名的,完整的方法名称保留为'funcOne ::'。它编译但是就像原来的方法被定义为void void FuncOne(int a,int _);'一样错误。命名变量只是'_'在技术上是正确的,但它不是一个理智的人会做的事情。在Obj-C中留下一个未命名的参数也同样丑陋。 – PeyloW 2010-11-18 07:46:51