Доступ к переменной экземпляра Singleton в методах класса выдает предупреждение? - PullRequest
0 голосов
/ 16 июня 2010

Я использую синглтон Objective C здесь в stackoverflow .

Синглтон в методе класса обращается к своей переменной экземпляра, которая работает, но выдает предупреждение Complie. Как я должен это делать? Есть ли способ сделать это без доступа к sharedInstance: в каждом методе класса?

например, вот мой метод класса:

+ (NSString *)myClassMethods {
    [instanceDateFormatter setFormat:@"MM"];
    return [instanceDateFormatter stringWithDate:somedate];
}

строка 2 будет иметь предупреждение о завершении.

Спасибо, Росс

Ответы [ 2 ]

3 голосов
/ 16 июня 2010

Вы должны использовать вызов sharedInstance: в каждом методе класса. Я думаю, если вы действительно хотите, вы можете обойти это с помощью глобальных переменных, но правильное решение , как вы упоминали.

2 голосов
/ 16 июня 2010

Поскольку instanceDataFormatter является переменной экземпляра, вам необходимо получить к ней доступ через экземпляр класса - поэтому вам нужно пройти через ваш метод sharedInstance, чтобы получить его.Или вы можете получить к нему доступ через статическую одноэлементную переменную, минуя вызов sharedInstance (однако он может прерваться, если статическая переменная еще не была инициализирована).

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