Я исправил свою ошибку;) Код, который я вставил в качестве примера, правильный.

жный дубликат:
Как работает подчеркивание перед переменной в классе 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, но я все еще в начале обучения. Возможно, я делаю что-то не так, и где-то у меня плохая практика кодирования.

Заранее спасибо, если сможете мне помочь;)

Ответы на вопрос(5)

Ваш ответ на вопрос