標(biāo)題: const修飾時(shí),對(duì)象是否可變 [打印本頁(yè)]

作者: heicad    時(shí)間: 2014-6-14 04:25
標(biāo)題: const修飾時(shí),對(duì)象是否可變
區(qū)別如下,const所指向的對(duì)象,或者修飾對(duì)象,是否可變:
const int*p;          // p 可變,p 指向的對(duì)象不可變
int const*p;          // p 可變,p 指向的對(duì)象不可變
int *const p;          // p 不可變,p指向的對(duì)象可變
const int *constp;    //指針p 和p 指向的對(duì)象都不可變

如果你經(jīng)常搞混的話,你可以嘗試一下
先忽略類型名(編譯器解析的時(shí)候也是忽略類型名),
我們看const 離哪個(gè)近!敖畼桥_(tái)先得月”,離誰(shuí)近就修飾誰(shuí)。
const int *p;         //const 修飾*p,p 是指針,*p 是指針指向的對(duì)象,不可變
int const *p;         //const修飾*p,p 是指針,*p是指針指向的對(duì)象,不可變
int *const p;        //const修飾p,p 不可變,p 指向的對(duì)象可變
const int *constp;    //前一個(gè)const 修飾*p,后一個(gè)const 修飾p,指針p 和p 指向的對(duì)象都不可變

世界是在變的,但是一些東西是不變的。抓住某些東西,或許你可以改變Something!!



作者: joyb    時(shí)間: 2023-12-30 08:37
const是一個(gè)C語(yǔ)言(ANSI C)的關(guān)鍵字,具有著舉足輕重的地位。它限定一個(gè)變量不允許被改變,產(chǎn)生靜態(tài)作用。使用const在一定程度上可以提高程序的安全性和可靠性。另外,在觀看別人代碼的時(shí)候,清晰理解const所起的作用,對(duì)理解對(duì)方的程序也有一定幫助。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1