Цель c имущественным вопросом - PullRequest
0 голосов
/ 13 февраля 2012

В моем файле Settings.h есть строка

@property (nonatomic, retain) NSArray * connections;

Также в файле Settings.m есть импорт:

#import "Settings.h"

и позже я предоставляю реализацию

- (NSArray*)connections 
{
    return connections;
}
- (void)setConnections:(NSArray*)_connections
{
    connections = _connections; 
    // do some more stuff
}

Но и в геттере, и в сеттере я получаю сообщение об ошибке use of undeclared identifier 'connections' Я понятия не имею, что я делаю не так, поэтому любая ваша помощь будет принята с благодарностью!

Ответы [ 3 ]

2 голосов
/ 11 декабря 2012
in Settings.m 

@synthesize connections = _connections;

in setting.h
0 голосов
/ 13 февраля 2012

Вы совершенно правильно пытаетесь использовать ивар (называемый connections) в качестве резервного хранилища для вашей собственности, также называемый connections;

Чтобы заставить его работать, вы должны просто объявить ивара следующим образом:

// Settings.h

NSArray * connections;

Он должен заключаться в фигурные скобки объявления класса, например:

@interface MyClass : MySuperClass {
    NSArray *connections;
    // More ivars...
}

@property (nonatomic, assign) NSArray *connections;

@end
0 голосов
/ 13 февраля 2012

В Settings.h добавить переменную экземпляра NSArray *connections; (если ее там еще нет), затем в Settings.m чуть ниже @implementation добавить это:

@dynamic connections;

Другой вариант - удалить ваши методы доступа и перейти к @synthesize connections; вместо dynamic, и методы доступа будут созданы для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...