какая именно настройка @property? а геттер= делать?

1. Пожалуйста, подтвердите, правильно ли я понимаю.

У меня есть строка кода ниже,

@property (strong, nonatomic) Month *august; и он будет настроен ниже.

1 связующий -(void)setAugust:(Month *)august

1 геттер -(Month *)august

и 1 ивар _august

и когда я реализую свой собственный сеттер, мне нужно _august = august (внутри сеттера, чтобы назначить ivar с правильным значением)

2. Другой вопрос, который показывает пример: когда я реализую setter , они используют _ivar = ivar;, а другие используют @synthesize _ivar = ivar;.

Я полагаю, что @synthesize использовался для создания сеттера и геттера, но это сокращение от iOS 6, верно? Я смущен использованием оператора при реализации setter.

3. @property (nonatomic, getter=isPlan) BOOL plan;

Что именно означает «getter=»?


person fkkcloud    schedule 18.08.2013    source источник


Ответы (1)


  1. Вы правы (после двух опечаток, которые я исправил - если это не опечатки, убедитесь, что вы понимаете разницу).
  2. @synthesize раньше требовалось, но больше не требуется. Это особенность Xcode (на самом деле компилятора), а не любой версии iOS.
  3. Он генерирует метод getter с другой сигнатурой:

Нормальный:

- (BOOL)plan;

Указано:

- (BOOL)isPlan;
person Wain    schedule 18.08.2013