2014-09-23 26 views
0

這兩個片段產生了相同的結果。什麼是numberOfTimes(方法?)你如何實現numberOfTimes?類中的方法

class Counter 
{ 
    var count: Int = 0 
    func incrementBy(amount: Int, numberOfTimes times: Int) 
    { 
     count += amount * times 
    } 

} 
var counter = Counter() 
counter.incrementBy(2, numberOfTimes: 7) 


class Counter 
{ 
    var count: Int = 0 
    func incrementBy(amount: Int, times: Int) 
    { 
     count += amount * times 
    } 
} 
var counter = Counter() 
counter.incrementBy(2, times: 7) 

回答

2

numberOfTimes不是方法,它是外部參數名稱。 Times是一個內部參數名稱。檢查出this reference欲知更多信息。

1

這是一個外部參數名稱,並確定你調用函數時使用的名稱,而本地參數名稱(在你的代碼times)是如何的參數從函數內引用。

瞭解更多關於Function Parameter Names

2

我不知道我理解正確的問題,但numberOfTimes對於times參數的外部參數名稱。

唯一的區別是,在一個情況下,你必須調用方法

counter.incrementBy(2, numberOfTimes: 7) 

而如果你離開它,當地的名稱自動也用作外部

counter.incrementBy(2, times: 7) 

更多關於official docs的主題。