Я использую переменную / свойство моего делегата приложения в качестве глобального. (Я не хочу иметь дело с синглтон-классом.)
Я пытаюсь написать оператор #define в своем классе Application Delegate. Если я наберу:
[UIApplication sharedApplication]
в моем классе делегатов приложения, подсказка кода не распознает sharedApplication. Но если я наберу то же самое в классе viewController, появится сообщение «sharedApplication».
Чтобы определить NSMutableDictionary в моем applicationDelegate.h (или .m?), Я пишу:
#define MyDictionary [[[UIApplication sharedApplication] delegate] stateDictionary]
Тогда, если я попытаюсь использовать его в другом классе:
[[MyDictionary objectForKey:@"California"] largestCity];
Я получаю ошибку, что MyDictionary должен быть объявлен первым. Я действительно смущен множеством понятий здесь.