const和#define

const 和#define區(qū)別

相同點(diǎn): 定義的值不可變

不同點(diǎn):

const:用const 在使用的地方,只會產(chǎn)生一個臨時的內(nèi)存區(qū)域, 內(nèi)存只有一份 ?<蘋果推薦使用>

#define: 用這個重定義, 會再使用的地方產(chǎn)生多個臨時區(qū)域, 內(nèi)存有多份

const :

const 修飾: 全局變量 ? ?變成 ? 全局常量 ?

static const ... 變成私有, 其他地方不可訪問

引用常量的時候最好加上const ?例如: ?extern const tif ; 這樣避免了別人誤以為這是個可以修改的變量. 其實(shí)是個常量, 從根源阻止


規(guī)范:

新建一個頭文件比如: tzf.h 專門用來放這些沖定義的常量, 最好在新建一個空文件取名 tzf.m 更加規(guī)范

.h 文件內(nèi) 引用 比如: ?

.m 文件內(nèi)定義





*const<*后const> :

const int *p1; ? ? ? ? ?int ?const *p2;

const 在*p1 *p2 前面, 所有*p1 和*p2 不可改, &p1 &p2 可以改

字符串中用const: ?NSString * const ?XMGName = @"jack";

把const 放在* 后 ,就可以防止別人在外面修改,這就是蘋果為什么這樣寫的原因

const *<*前const> :

int * const p3;

const * 后面, 所有*p1 和*p2 可改, &p1 &p2 不可以改

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

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

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