Possible Duplicates:
Optional arguments in Objective-C 2.0?
Objective-C Default Argument Value
我正在用 Objective-C 编写一个 C 函数。我想为我的最后一个参数设置一个 默认值。
我试过了:
foo(int a, int b, int c = 0);
但那是 C++。
我也试过了:
foo(int a, int b, int c)
{
...
}
foo(int a, int b)
{
foo(a, b, 0);
}
但这也是 C++。
有没有办法在 Objective-C 中做到这一点?
最佳答案
ObjC 中没有默认参数。
您可以创建 2 个方法:
-(void)fooWithA:(int)a b:(int)b c:(int)c {
...
}
-(void)fooWithA:(int)a b:(int)b {
[self fooWithA:a b:b c:0];
}
对于 C :使用 ObjC 没有什么特别的添加到 C 子集中。在纯 C 中无法完成的任何事情也无法通过在 ObjC 中编译来完成。这意味着,您不能有默认参数,也不能重载函数。改为创建 2 个函数。
关于具有默认参数的Objective-C函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2436070/