- 限定變量爲常量,一經定義無法修改,必須初始化;
- 默認只在文件內有效,若想在多個文件中共享,需引入
extern
關鍵字; 指向常量的引用/指針
不能修改其綁定的對象;
①引用/指針是常量,可以綁定任何對象
(常量引用不能修改其綁定的對象,綁定任何對象都不會出錯)
②對象是常量,引用/指針必須也是常量
(非常量引用可以修改其綁定的對象,但常量對象不能修改,會出錯)- 區分
頂層const
和底層const
:一個指針本身添加const限定符就是頂層const,而指針所指的對象添加const限定符就是底層const。
兩個用途:① 避免對象拷貝出錯,底層const不能賦值給非底層const
。
② const_cast,強制轉換掉表達式的const性質,const_cast只對底層const起作用
。
5.constexpr 定義頂層const
,用法如下:
參考:
1.C++的頂層const和底層const的理解