iOS FOUNDATION_EXPORT 與#define

今天查看系統(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)注明出處。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容