Я использую xCode6 Beta 3 и столкнулся с проблемой, когда код, который ранее скомпилировался нормально (xCode 5.1.1 или xCode6 beta 2), внезапно начал выдавать мне ошибки "Использование необъявленного идентификатора" при доступе к автоматически синтезируемой переменной экземпляра:
- (void)setFinished:(BOOL)finished {
[self willChangeValueForKey:@"isFinished"];
_finished = finished;
[self didChangeValueForKey:@"isFinished"];
}
//ERROR:
Use of undeclared identifier '_finished'; did you mean 'finished'?
Добавление @synthesize finished = _finished;
устраняет ошибку, но есть ли способ заставить xCode6 Beta 3 использовать автоматический синтез свойств с использованием подчеркивания?
@synthesize finished = _finished;
, если у вас есть и геттер, и сеттер. Это происходит и в более ранних версиях Xcode. - person i_am_jorf   schedule 08.07.2014