局部名為下劃線的參數會被忽略。調用者必須要提供一個實參,不過函數體中並沒有它的名字,因此無法引用。比如:
func say(s:String, times:Int, loudly _:Bool) {
函數體中無法使用loudly參數,不過調用者還是需要提供第3個參數:
say("hi", times:3, loudly:true)
聲明不需要為忽略的參數提供外部名:
func say(s:String, times:Int, _:Bool) {
不過調用者必須要提供:
say("hi", times:3, true)
該特性的目的是什麼呢?它並非為了滿足編譯器的要求,因為如果函數體中沒有引用某個參數,那麼編譯器並不會報錯。我主要將其作為對自己的一個提示,表示「我知道這裡有個參數,只不過故意不使用它而已」。