Подтвердить что ты не робот

Определение глобальной доступной строки в Objective-C

Каков наилучший способ определения глобальной доступной строки?

Я вижу, что для целых чисел это обычно так #define easy 0

Однако, как я могу подражать этому для NSString?
Я попробовал статический NSString *BACKGROUND = @"bg.png";
В то время как эта работа, она дает предупреждение о том, что переменная никогда не используется. (У меня все это в файле .h)

Выполнение NSString *const BACKGROUND = @"bg.png"; еще хуже, поскольку при импорте файла указывается повторяющаяся переменная.

Я вижу, что #define BACKGROUND @"bg.png" тоже работает.

Итак, я думаю, в чем разница между тем, когда использовать #define, const и static

Спасибо,
Тройник

4b9b3361

Ответ 1

Это правильный способ сделать это. Создайте новый пустой файл .h и .m. В файле .h:

extern NSString* const BACKGROUND;

В вашем .m файле:

NSString* const BACKGROUND = @"bg.png";