引数を指定して関数を呼び出すには、各パラメータをSwift 3.0で一緒に書き込む必要があります。 しかし、関数を型名付きの定数に代入した後は、各パラメータを記述する必要はありません。どうして?swiftの関数型の注釈
func foo(base : Int) {
print ("param = \(base)")
}
// Case 1
let s : (Int) ->() = foo
s(5) // SUCCESS!
s(base:5) // Error!
// Case 2
let k : (base: Int) ->() = foo
k(5) // Error!
k(base: 5) // SUCCESS!
// Case 3
let t = foo
t(5) // Error!
t(base: 5) // SUCCESS!
「let s:(base:Int) - >()= foo'または単に「let s = foo'」で閉じることができます。 –
Swift 3の将来のバージョンでは、関数型のパラメータ名を指定することはできませんが、[この進化の提案](https://github.com/apple/swift-evolution/blob/master/proposals/0111- remove-arg-label-type-significance.md)。 – Hamish