關(guān)鍵字const的作用

我為什么還要如此看重關(guān)鍵字const呢英遭?我也如下的幾下理由:

1) 關(guān)鍵字const的作用是為給讀你代碼的人傳達(dá)非常有用的信息胁赢,實(shí)際上企蹭,聲明一個(gè)參數(shù)為常量是為了告訴了用戶這個(gè)參數(shù)的應(yīng)用目的。如果你曾花很多時(shí)間清理其它人留下的垃圾智末,你就會(huì)很快學(xué)會(huì)感謝這點(diǎn)多余的信息谅摄。(當(dāng)然,懂得用const的程序員很少會(huì)留下的垃圾讓別人來清理的系馆。)

2) 通過給優(yōu)化器一些附加的信息送漠,使用關(guān)鍵字const也許能產(chǎn)生更緊湊的代碼。

3) 合理地使用關(guān)鍵字const可以使編譯器很自然地保護(hù)那些不希望被改變的參數(shù)由蘑,防止其被無意的代碼修改闽寡。簡而言之代兵,這樣可以減少bug的出現(xiàn)。


const關(guān)鍵字至少有下列5個(gè)作用:

(1)欲阻止一個(gè)變量被改變爷狈,可以使用const關(guān)鍵字植影。在定義該const變量時(shí),通常需要對(duì)它進(jìn)行初始化涎永,因?yàn)橐院缶蜎]有機(jī)會(huì)再去改變它了思币;

(2)對(duì)指針來說,可以指定指針本身為const羡微,也可以指定指針?biāo)傅臄?shù)據(jù)為const谷饿,或二者同時(shí)指定為const;

(3)在一個(gè)函數(shù)聲明中妈倔,const可以修飾形參博投,表明它是一個(gè)輸入?yún)?shù),在函數(shù)內(nèi)部不能改變其值启涯;

(4)對(duì)于類的成員函數(shù)贬堵,若指定其為const類型,則表明其是一個(gè)常函數(shù)结洼,不能修改類的成員變量黎做;

(5)對(duì)于類的成員函數(shù),有時(shí)候必須指定其返回值為const類型松忍,以使得其返回值不為“左值”蒸殿。


舉例:

// const兩種用法

//?const:修飾基本變量p

//?這兩種寫法是一樣的,const只修飾右邊的基本變量b

const?int?b?=?20;?//?b:只讀變量

int?const?b?=?20;?//?b:只讀變量

//?不允許修改值

b?=?1;

//?const:修飾指針變量*p鸣峭,帶*的變量宏所,就是指針變量.

//?定義一個(gè)指向int類型的指針變量,指向a的地址

int?*p?=?&a;

int?c?=?10;

p?=?&c;

//?允許修改p指向的地址摊溶,

//?允許修改p訪問內(nèi)存空間的值

*p?=?20;

//?const修飾指針變量訪問的內(nèi)存空間爬骤,修飾的是右邊*p1,

//?兩種方式一樣

const?int?*p1;?//?*p1:常量?p1:變量

int?const?*p1;?//?*p1:常量?p1:變量

//?const修飾指針變量p1

int?*?const?p1;?//?*p1:變量?p1:常量

//?第一個(gè)const修飾*p1?第二個(gè)const修飾?p1

//?兩種方式一樣

const?int?*?const?p1;?//?*p1:常量?p1:常量

int?const?*?const?p1;??//?*p1:常量?p1:常量

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末莫换,一起剝皮案震驚了整個(gè)濱河市霞玄,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拉岁,老刑警劉巖坷剧,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異喊暖,居然都是意外死亡惫企,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門陵叽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來狞尔,“玉大人丛版,你說我怎么就攤上這事∑颍” “怎么了硼婿?”我有些...
    開封第一講書人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長禽车。 經(jīng)常有香客問我,道長刊殉,這世上最難降的妖魔是什么殉摔? 我笑而不...
    開封第一講書人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮记焊,結(jié)果婚禮上逸月,老公的妹妹穿的比我還像新娘。我一直安慰自己遍膜,他們只是感情好碗硬,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瓢颅,像睡著了一般恩尾。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上挽懦,一...
    開封第一講書人閱讀 49,185評(píng)論 1 284
  • 那天翰意,我揣著相機(jī)與錄音,去河邊找鬼信柿。 笑死冀偶,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的渔嚷。 我是一名探鬼主播进鸠,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼形病!你這毒婦竟也來了客年?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤窒朋,失蹤者是張志新(化名)和其女友劉穎搀罢,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體侥猩,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡榔至,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了欺劳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唧取。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡铅鲤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出枫弟,到底是詐尸還是另有隱情邢享,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布淡诗,位于F島的核電站骇塘,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏韩容。R本人自食惡果不足惜款违,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望群凶。 院中可真熱鬧插爹,春花似錦、人聲如沸请梢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽毅弧。三九已至气嫁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間够坐,已是汗流浹背杉编。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留咆霜,地道東北人邓馒。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像蛾坯,于是被迫代替她去往敵國和親光酣。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • 注:這是第三遍讀《C語言深度解剖》脉课,想想好像自從大學(xué)開始就沒讀完過幾本書救军,其中譚浩強(qiáng)的那本《C語言程序設(shè)計(jì)(第四版...
    HavenXie閱讀 1,717評(píng)論 1 6
  • 1.面向?qū)ο蟮某绦蛟O(shè)計(jì)思想是什么? 答:把數(shù)據(jù)結(jié)構(gòu)和對(duì)數(shù)據(jù)結(jié)構(gòu)進(jìn)行操作的方法封裝形成一個(gè)個(gè)的對(duì)象倘零。 2.什么是類唱遭?...
    少帥yangjie閱讀 4,990評(píng)論 0 14
  • __block和__weak修飾符的區(qū)別其實(shí)是挺明顯的:1.__block不管是ARC還是MRC模式下都可以使用,...
    LZM輪回閱讀 3,284評(píng)論 0 6
  • 70后的老王呈驶、80后的小李和90后的小牛(牛耀三)在一個(gè)領(lǐng)導(dǎo)下面干活兒拷泽。又到一年收獲季。一天開會(huì),領(lǐng)導(dǎo)說:這幾天工...
    新雅人閱讀 498評(píng)論 1 2
  • 其實(shí)情人節(jié)我是有點(diǎn)抗拒的司致。拆吆。 作為一枚已婚已育婦女 俺還是舍不得掐死那個(gè)少女心 然而老公是標(biāo)準(zhǔn)的理工直男 鄙視各種...
    yaknow閱讀 168評(píng)論 0 0