1.const 修飾指針
( 1 ) const?int?*p=&x :不可改動 *p 的內容,但能夠讓指針 p 指向還有一個地址,和 int?const?*p 一樣 ?
( 2 ) int?*const?p=&x :指針本身是個常量,固定指向某一變量,因此 p 不可變,可是 *p 可變
2.const 修飾函數
( 1 )函數參數前加 const 是保護指針,引用傳遞的值不可改動
( 2 )類的成員函數后面加 const ,表面該函數不能改動成員變量,不可調用非 const 成員函數
3.Volatile
訪問寄存器要比訪問內存快得多,編譯器往往將頻繁使用的變量保存在寄存器中,以便保證存取速度,這可能會導致變量臟讀。用 Volatile 修飾的變量每次都會從內存讀取,防止臟讀
4.Static
( 1 )隱藏。 ? 當我們同一時候編譯多個文件時,全部未加 static 前綴的全局變量和函數都具有全局可見性,故使用 static 在不同的文件里定義同名函數和同名變量,而不必操心命名沖突。
( 2 ) static 的第二個作用是保持變量內容的持久。存儲在靜態數據區的變量會在程序剛開始執行時就完畢初始化,也是唯一的一次初始化。共同擁有兩種變量存儲在靜態存儲區:全局變量和 static 變量。
( 3 ) static 的第三個作用是默認初始化為 0. 事實上全局變量也具備這一屬性,由于全局變量也存儲在靜態數據區。在靜態數據區,內存中全部的字節默認值都是 0 × 00, 某些時候這一特點能夠降低程序猿的工作量。
?
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
