亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
關(guān)于c++兩種常量的區(qū)別,請(qǐng)各位大神指教
[打印本頁]
作者:
殘風(fēng)之影
時(shí)間:
2015-09-24 15:58
標(biāo)題:
關(guān)于c++兩種常量的區(qū)別,請(qǐng)各位大神指教
#define SIZE 100 和const int SIZE=100;的具體區(qū)別是什么
作者:
T-Bagwell
時(shí)間:
2015-09-24 21:04
從定義的意義講:一個(gè)是100, 一個(gè)是SIZE常量,被賦值為100
從編譯之后看:
.file "b.c"
.text
.globl main
.type main, @function
main:
.LFB0:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
movl $100, -4(%rbp)
movl $100, %eax
popq %rbp
.cfi_def_cfa 7, 8
ret
.cfi_endproc
.LFE0:
.size main, .-main
.ident "GCC: (GNU) 4.8.2 20140120 (Red Hat 4.8.2-16)"
.section .note.GNU-stack,"",@progbits
復(fù)制代碼
是兩回事
一個(gè)是直接就是#define SIZE 100是在編譯的時(shí)候就已經(jīng)把SIZE替換成100了,因?yàn)槭穷A(yù)編譯的
SIZE=100,是當(dāng)運(yùn)行的時(shí)候,將100賦值給SIZE
作者:
bayuan0414
時(shí)間:
2015-09-24 23:49
一個(gè)是宏,一個(gè)是不可變的整形變量。宏是由預(yù)處理器處理的,在編譯之前執(zhí)行,將源碼中出現(xiàn)有SIZE的地方全部替換為100。
作者:
jorhai
時(shí)間:
2015-10-17 19:21
effective C++ 里專門有講
作者:
文峰聊書齋
時(shí)間:
2015-10-22 13:57
#define 是編譯時(shí)替換。沒有類型檢查
const 是變量聲明定義,涉及內(nèi)存開辟。
作者:
scounixadmin
時(shí)間:
2015-10-23 12:57
宏與變量要區(qū)分開
歡迎光臨 Chinaunix (http://72891.cn/)
Powered by Discuz! X3.2