關於C++ const 變量


const 的全局變量是儲存在一個只讀數據段中,雖然你可以定義一個指向它的指針,卻會在運行時,在對該地址賦值的時候發生運行錯誤,
而局部的const變量是儲存在棧中的,離開作用域后同樣會被釋放,並且可以對指向該地址的指針進行賦值操作,但是不論是全局的const變量
還是局部的const變量,都是以一個字符表的形式儲存在某個位置,該變量本身是不可改變的,是沒有分配內存的,所以即便對指向該地址的
指針進行賦值,該const變量print出來的數值仍然是最初賦的值。

下面用代碼來說明:

 

運行結果如下:

 

若我們嘗試對指向B的指針賦值,會出現什么情況:

運行結果如下:

報錯了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM