在Swift 2中,似乎在调用函数时并不总是需要第一个参数名称.现在在Swift 3中,调用该函数时需要第一个参数名称.例如:
func frobnicate(runcible: String) { print("Frobnicate: \(runcible)") }
Frobnicate("Station")
Frobnicate(runcible:"Station")
是的,这是对的. Swift正在以这种方式修复语言不一致(这对于初始化程序来说始终是必需的).
如果您不想使用外部参数名称,请将其清除:
func frobnicate(_ runcible: String) { print("Frobnicate: \(runcible)") }
您可以阅读Swift Evolution 0046的完整理由