gpt4 book ai didi

swift - 如何访问方法中的匿名参数?

转载 作者:行者123 更新时间:2023-11-28 13:24:57 25 4
gpt4 key购买 nike

如何访问函数体内的 str 标签?如果不可能,那么为什么编译器不抛出错误?

class Test {
func methodA(str _: String) {
}

func methodB() {
methodA(str: "")
}
}

最佳答案

使用_ 作为参数名称意味着您无需在方法中使用该参数。 str 参数标签在方法本身的实现中没有用处。它仅在调用语法中有用。

如果您确实需要在方法中使用参数,请不要给它匿名名称_。给它起一个有用的名字,以便在方法的实现中可以引用它。或者简单地删除 _,使参数名称和标签都相同。

要么:

func methodA(str: String) {
// do something with str
}

或类似的东西:

func methodA(str val: String) {
// do something with val
}

在这两种情况下,调用者与您当前拥有的相同:

methodA(str: "")

您唯一需要匿名参数名称的情况是您的方法实现实际上并未使用该参数。也许实现尚未完成,或者随着时间的推移它发生了变化并且不再需要参数并且您不想更新大量调用该方法的现有代码。

有一个编译器设置可以获取有关未使用参数的警告。如果您有未使用的参数,将名称更改为 _ 即可消除警告。

参见 Function Argument Labels and Parameter Names在 Swift 书中(尽管它没有涵盖这种匿名参数名称的情况)。

关于swift - 如何访问方法中的匿名参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58531566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com