定义全局可访问字符串的最佳方法是什么?
我看到整数通常都是这样的 #define easy 0
但是,如何为NSString模拟呢?
我试过静态NSString *BACKGROUND = @"bg.png";
虽然这项工作,它确实发出警告说变量从未使用过。 (我将所有这些都放在.h文件中)
执行NSString *const BACKGROUND = @"bg.png";
更糟糕,因为我在导入文件时会说重复变量。
我发现#define BACKGROUND @"bg.png"
似乎也有效。
所以我想我什么时候使用#define
,const
& static
谢谢,
三通
答案 0 :(得分:43)
这是正确的方法。制作一些新的空白.h文件和.m文件。在你的.h文件中:
extern NSString* const BACKGROUND;
在您的.m文件中:
NSString* const BACKGROUND = @"bg.png";
答案 1 :(得分:6)
您可能需要考虑使用property list来存储字符串。这使您的代码可以保持灵活性,以便将来更新,尤其是在您添加对本地化的支持时。