3 回答

TA貢獻1906條經(jīng)驗 獲得超10個贊
您應(yīng)該創(chuàng)建一個頭文件,如
//?Constants.hFOUNDATION_EXPORT?NSString?*const?MyFirstConstant;FOUNDATION_EXPORT?NSString?*const?MySecondConstant;//etc.
(你可以用extern
而不是FOUNDATION_EXPORT
如果您的代碼不用于混合C/C+環(huán)境或其他平臺)
可以將此文件包含在使用常量的每個文件中,也可以包含在項目的預(yù)編譯頭中。
在.m文件中定義這些常量,如下所示
//?Constants.mNSString?*const?MyFirstConstant?=?@"FirstConstant";NSString?*const?MySecondConstant?=?@"SecondConstant";
應(yīng)該將Constants.m添加到應(yīng)用程序/框架的目標(biāo)中,以便將其鏈接到最終產(chǎn)品。
使用字符串常量代替#define
D常量是可以使用指針比較來測試等式的(stringInstance == MyFirstConstant
),它比字符串比較快得多([stringInstance isEqualToString:MyFirstConstant]
)

TA貢獻1860條經(jīng)驗 獲得超8個贊
// Prefs.h#define PREFS_MY_CONSTANT @"prefs_my_constant"
// Prefs.hextern NSString * const PREFS_MY_CONSTANT;// Prefs.mNSString * const PREFS_MY_CONSTANT = @"prefs_my_constant";

TA貢獻1827條經(jīng)驗 獲得超4個贊
static
// In your *.m filestatic NSString * const kNSStringConst = @"const value";
static
- 3 回答
- 0 關(guān)注
- 569 瀏覽
添加回答
舉報