Swift初始化程序中参数名称中的“ with”

该初始化程序将导致错误提示 "with" is implied for the first parameter of an initialiser;

did you mean name?

init(withName: String){

}

我不确定这是什么意思,如果它自动提供了withName外部参数名称(如果我将其称为名称)还是什么…

如果我将其更改为

init(name: String){

}

任何尝试调用它,init(with: "joe")否则init(withName:

"Joe")都会失败。所以我不知道错误消息告诉我什么以及如何声明它,所以我称之为init(withName: "joe")

回答:

在Swift中,您不应添加with到初始化程序。初始值设定项应为init(name:),您应将其称为Object(name: "joe")

这是因为Swift方法如何桥接到ObjC。在ObjC中,该初始化程序将自动转换为initWithName:。如果您命名它init(withName:),它将变为initWithWithName:

以上是 Swift初始化程序中参数名称中的“ with” 的全部内容, 来源链接: utcz.com/qa/414174.html

回到顶部