Bri*_*tow 38 parameters function objective-c default-value
我正在Objective C中编写一个C函数.我想要一个我最后一个参数的默认值.
我试过了:
foo(int a, int b, int c = 0);
Run Code Online (Sandbox Code Playgroud)
但那是C++
我也试过了
foo(int a, int b, int c)
{
...
}
foo(int a, int b)
{
foo(a, b, 0);
}
Run Code Online (Sandbox Code Playgroud)
但这也是C++.
有没有办法在Objective C中做到这一点?
ken*_*ytm 103
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];
}
Run Code Online (Sandbox Code Playgroud)
对于C:使用ObjC没有为C子集添加任何特殊内容.任何无法在纯C中完成的事情都无法通过在ObjC中编译来完成.这意味着,您不能拥有默认参数,也不能重载函数.改为创建2个函数.