我确定您在询问 c++ 的默认参数化函数。
但是 Objective-C 不支持这一点。
您可以创建 2 种方法:
-(void) changeButton:(UIButton *)button andAlpha:(float)alpha {
button.alpha = alpha;
}
-(void) changeButton:(UIButton *)button andAlpha:(float)alpha andEnabled:(BOOL)enabled {
button.alpha = alpha;
button.enabled = enabled;
}
对于 C :使用 ObjC 对 C 子集没有什么特别的添加。在纯 C 中无法完成的任何事情也无法通过在 ObjC 中编译来完成。这意味着,您不能有默认参数,也不能重载函数。改为创建 2 个函数。
另一种方法(有点冗长,因为很少有人使用)是有一个标志并检查标志是/否。
-(void) changeButton:(UIButton *)button andAlpha:(float)alpha andEnabled:(BOOL)enabled withFlag:(BOOL)flag{
button.alpha = alpha;
if(flag){
button.enabled = enabled;
}
}