1. 程式人生 > >C++ 學習筆記(二) const的加強

C++ 學習筆記(二) const的加強

right 變量 pla 實例 編譯器 display 簡介 c語言 style

const 含義為只讀。如果在程序中顯式改變const變量那麽編譯會報錯。

C語言的const:

在C語言中const 變量是放在內存中,如果使用指針可以簡介改變const變量。所以在C語言中const變量是並非不可修改,演示如下:

技術分享圖片

從圖片實例中看出,通過指針指向const變量是可以修改所在內存的值。

C++中的const:

在C++中const變量不存放在內存中,而是存放在一個叫做“符號表”的東西裏面(由編譯器處理,裏面的原理我也還沒搞清楚,能用就好)。

比如:

const int a=10;//定義一個const 變量

那麽在符號表裏 符號a 就對應了數值 10。使用指針並不能改變a的值,實例:

技術分享圖片

在例程中可以看出const修飾的a變量是不能被指針修改的,但是指針所指向的內存也確實被修改了。

C++ 學習筆記(二) const的加強