今天查看系統(tǒng)文件涮雷,看到了FOUNDATION_EXPORT這個修飾詞蝙昙,對于我這種初涉iOS編程的初學(xué)者來說,對于這個非常陌生泞当,所以就上網(wǎng)搜了一下迹蛤,原來FOUNDATION_EXPORT是用來定義常量的,我這里就用這篇文章記錄整理一下我搜到的內(nèi)容,給自己當(dāng)作一個筆記盗飒。
FOUNDATION_EXPORT 與 #define 都可以用來定義常量
.h文件
FOUNDATION_EXPORT NSString *const kMyConstantString;
.m文件是這樣定義的
NSString *const kMyConstantString = @"hello world";
另一種就是常用的#define 方法定義常量了
#define kMyConstantString @"Hello"
那么他們有什么區(qū)別呢?
使用FOUNDATION_EXPORT方法在檢測字符串的值是否相等的時候效率更快.
可以直接使用(myString == MyFirstConstant)來比較, 而define則使用的是([myString isEqualToString:MyFirstContant])
哪個效率更高,顯而易見了
第一種是直接比較指針地址
第二種則是一一比較字符串的每一個字符是否相等.