const 在C/C++的用法 - Welkin小窩- 痞客邦

文章推薦指數: 80 %
投票人數:10人

const的用法分為以下兩種: 1:在定義變量時使用: 總結:在使用const定義變量時,一定要進行初始化操作,在操作符(*,&)左邊的修飾的是指向的內容, ... 關閉廣告 Welkin小窩 跳到主文 柴米油鹽的平淡生活 部落格全站分類:不設分類 相簿 部落格 留言 名片 Jan09Wed201310:29 const在C/C++的用法 const的用法分為以下兩種: 1:在定義變量時使用:   總結:在使用const定義變量時,一定要進行初始化操作,在操作符(*,&)左邊的修飾的是指向的內容,在右邊的是本身。

  a:constinta=100;      最簡單的用法,設定說明變數a是一個常數變數。

  b:intconstb=100;      與a功能相同。

  c:constint*a=&b;      指向常數的指針,即指針本身的值是可以改變的,但指向的內容是不能改變的。

  d:intconst*a=&b;      與c功能相同。

  e:int*consta=&b;    常數指針,即指針本身的值是不可改變的,但指向的內容是可改變的。

  f:constint*consta=&b; 指向常數的常數指針,即指針本身與指向的內容都是不可改變的。

  g:constint&a=100;     常數引用,即不能改變引用的值。

2:在函數用使用:   總結:在函數中使用const,情況與定義變數的情況大致相同。

  a:voidfunc(constinta);  做為參數使用,說明函數內是不能修改該參數的。

  b:constintfunc();     做為返回值使用,說明函數的返回值是不能被修改的。

  c:intfunc()const;     常數函數,說明函數是不能修改該類別中成員的值的,只能用於類別的成員函數中。

(應用原則) 1. 先左由右,看左邊最近的是何種datatype,若左邊沒有,則看右邊最近的。

2. 沿著*號劃一條線, 如果const位於*的左側,則const就是用來修飾指標所指向的變數,即指標指向為常量。

如果const位於*的右側,const就是修飾指標本身,即指標本身是常量。

範本 例一:constint*Constant1    -->constint(*Constant1) 例二:intconst*Constant2    -->intconst(*Constant2) 例三:int*constConstant3    -->(int*)constConstant3    -->const(int*)Constant3 例四:intconst*constConstant4 -->const(int*)constConstant4 解答 例一int值不可被修改 例二int值不可被修改 例三指標值不可被修改 例四int值與指標值皆不可修改   在下面這邊做個總結 記憶體的位置可以變動,但是記憶體的內容不能變動 constParent*pParent1=newSubA(); 記憶體的位置可以變動,但是記憶體的內容不能變動 Parentconst*pParent2=newSubA(); 記憶體的內容可以變動,但是記憶體的位址不能變動 Parent*constpParent3=newSubA(); 記憶體的位址與內容都不能變動 constParent*constpParent4=newSubA(); 記憶體的位置可以變動,但是記憶體的內容不能變動 constParentconst*pParent5=newSubA();   全站熱搜 創作者介紹 BB Welkin小窩 BB發表在痞客邦留言(0)人氣() E-mail轉寄 全站分類:不設分類個人分類:ProgramingC&C++此分類上一篇:stdin、stdout、stderr串流 此分類下一篇:const在成員函式中的用法 上一篇:FFMPEGdebugtrace 下一篇:const在成員函式中的用法 歷史上的今天 2013:const在成員函式中的用法 ▲top 留言列表 發表留言 相簿幻燈片 文章分類 生活集錦(3) 影音歌詞(17)生活其它(4)媽媽寶寶(25) SYSTEM(8) Linux-Pre(9)Yocto(1)LinuxSystem(20)Embedded(19)LinuxKernel(24)UbuntuManage(8)LinuxDebug&Trace(2)Android(21) Programing(3) Trace&Debug(11)ProgramingC&C++(22)GNUC(12) MultiMedia(3) Video(20)mplayer(13)FFmpeg(14) Computer(3) 系統安裝(5)常見問題(10)電腦基礎(3) 未分類文章(42) 文章搜尋 參觀人氣 本日人氣: 累積人氣: 月曆 « 六月2022 » 日 一 二 三 四 五 六       1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30     我的連結 回到頁首 回到主文 免費註冊 客服中心 痞客邦首頁 ©2003-2022PIXNET 關閉視窗



請為這篇文章評分?