iOS#全局string的#define或静态常量

我有一个constants.h文件,它声明了我在整个应用程序中使用的一串string。 我只有string,没有别的。 我应该使用#define或静态NSString常量? #define的作品,但我听到它不是最好的做法。

#define是一个预处理器macros。 这意味着它基本上通过你的代码,并用你定义的macros代替你的macros。

如果你使用一个const,它将是一个指向内存中string的指针。 无论何时何地使用相同的string,它的效率都会更高。

要做到这一点,你将需要.h和.m文件。 你的.h文件看起来像这样:

 extern NSString * const YOUR_STRING; 

和你的.m文件:

 NSString * const YOUR_STRING = @"your string";