今天查看系統(tǒng)文件,看到了FOUNDATION_EXPORT這個(gè)修飾詞,對(duì)于我這種初涉iOS編程的初學(xué)者來(lái)說(shuō),對(duì)于這個(gè)非常陌生,所以就上網(wǎng)搜了一下,原來(lái)FOUNDATION_EXPORT是用來(lái)定義常量的,我這里就用這篇文章記錄整理一下我搜到的內(nèi)容,給自己當(dāng)作一個(gè)筆記。
FOUNDATION_EXPORT 與 #define 都可以用來(lái)定義常量
.h文件
FOUNDATION_EXPORT NSString *const kMyConstantString;
.m文件是這樣定義的
NSString *const kMyConstantString = @"hello world";
另一種就是常用的#define 方法定義常量了
#define kMyConstantString @"Hello"
那么他們有什么區(qū)別呢?
使用FOUNDATION_EXPORT方法在檢測(cè)字符串的值是否相等的時(shí)候效率更快.
可以直接使用(myString == MyFirstConstant)來(lái)比較, 而define則使用的是([myString isEqualToString:MyFirstContant])
哪個(gè)效率更高,顯而易見(jiàn)了
第一種是直接比較指針地址
第二種則是一一比較字符串的每一個(gè)字符是否相等.
作者:歲變
鏈接:http://www.itdecent.cn/p/0694eb214d87
來(lái)源:簡(jiǎn)書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。