函数定义中单独的下划线是什么意思?
e.g. map(_:)
我知道在定义函数时我可以这样做:
func myFunc(_ string: String) { ... }
那么我可以将其称为myFunc(_:)
代替myFunc(_string:)
,即故意隐藏参数名称?
The _
用于定义参数未命名
如果您有多个_
它指出您不需要在函数调用中命名参数
func myFunc(name:String, _ age:String){
}
myFunc(“Milo", "I'm a really old wizard")
如果您不使用下划线,您将使用
myFunc(“Milo”, age: "I'm a really old wizard")
The _
对于函数调用来说不是必需的。它只是用来表示某物不需要有名称。
关于如何引用函数,您不必为函数调用传递任何名称。
但由于你也没有定义参数类型,这对我来说似乎是一个无效的示例(它至少在带有 Swift 2.0 的 Xcode 7 中不起作用)
Edit:
从 Swift 3.0 开始
myFunc(name: “Milo”, age: "I'm a really old wizard")
应该使用
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)