2014-09-23 4 views
0

Эти два отрывка дали тот же результат. Что такое numberOfTimes (метод?) Как вы реализуете числоOfTimes?Методы в классах

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.

Смежные вопросы