2014-11-26 6 views
2

В Swift вы можете инициализировать переменную в классе при объявлении переменной:инициализировать переменные Swift класса в декларации или с помощью init?

var name: String = "John" 

или вы можете инициализировать INIT:

var name: String 

init(name: String) { 
    self.name = name 
} 

Какую версию вы используете, и когда?

ответ

3

Если вы не указали начальное значение в качестве параметра инициализатора, для которого по понятным причинам вы можете сделать это в инициализаторе, вы можете использовать любой из двух способов.

Моих правил:

  • если есть несколько Инициализаторов, и свойство инициализируются с тем же значением во всех случаях я предпочитаю встроенный инициализацию
  • если свойство (или должно быть) неизменны Я предпочитаю встроенный инициализацию
  • если свойство может меняться в течение жизни экземпляра, я предпочитаю инициализацию конструктор

но кроме первой, дру er 2 основаны только на личных предпочтениях.

+0

Спасибо Антонио - это очень помогает. – Khanivore

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