Swift function 的完整名字
Swift function 的完整名字同時包含 function 名和外部參數名(Argument Labels),因此以下 function 的全名將為 add(number1:number2:),在 ( ) 裡輸入外部參數名和冒號。
func add(number1: Int, number2: Int){
let sum = number1 + number2
print(sum)
}
add(number1: 10, number2: 20)
我們也可以再寫另外一個 add 開頭的 function,只要它的外部參數名不一樣,比方以下的 function 是 add(number3:number4:)。
func add(number3: Int, number4: Int){
let sum = number3 + number4
print(sum)
}
我們也可以寫底線省略外部參數名,因此以下的 function 全名將變成 add(_:and:)。
func add(_ number1: Int, and number2: Int){
var sum = number1 + number2
print(sum)
}
add(10, and: 20)
在 function 的右鍵選單上點選 Copy > Copy Symbol Name 可取得 function 的全名。
關於 function 的全名,平常我們在查 iOS SDK 的 function 定義時也會看到,比方以下為 String 的 function hasPrefix(_:)。
許多 iOS SDK 內建的 function 也都要看完整的 function 名字才能明白意思,比方 UITableViewDataSource 的tableView(_:numberOfRowsInSection:) 和 tableView(_:cellForRowAt:),若只單看 function 名字 tableView 的話,就完全不明白它們的意思。但若看包含參數的全名,即可明白解前者是 cell 的數量,後者和 cell 的內容有關。