Я исправил свою ошибку;) Код, который я вставил в качестве примера, правильный.
жный дубликат:
Как работает подчеркивание перед переменной в классе target-c какао?
Я использую то же соглашение для именования переменных и свойств экземпляра, как показано sebnow в его следующем ответе:
именование переменных экземпляра / метода в Objective C
Я копирую и вставляю его пример кода здесь:
@interface Foo : NSObject {
id _bar;
}
@property (nonatomic, retain) id bar;
- (id) initWithBar:(id)aBar;
@end
@implementation Foo
@synthesize bar = _bar;
- (id) initWithBar:(id)aBar {
self = [super init];
if(self != nil) {
_bar = aBar;
}
return self;
}
@end
В реализации некоторых методов класса Foo я использую, например:
_bar = aBar
Вместо того, чтобы использовать:
bar = aBar
Инструмент «Анализ», представленный Xcode 4, выдает мне это предупреждение (я использую версию 4.0.2):
Переменная экземпляра 'bar' в классе 'Foo' никогда не используется методами в @implementation (хотя она может использоваться методами категории)
Возможно, я должен использовать:
self.bar = aBar
Но из-за свойств только для чтения, которые не могут работать, и кроме этого, я не уверен, является ли использование метода установки в самом классе хорошей практикой или нет.
Я не новичок в Objective-C, но я все еще в начале обучения. Возможно, я делаю что-то не так, и где-то у меня плохая практика кодирования.
Заранее спасибо, если сможете мне помочь;)