常數值是不會變更的常數值。 C++ 提供兩個關鍵字,以讓您表示不要修改物件的意圖,以及施行該意圖。
C++ 需要常數運算式 (也就是評估為常數的運算式) 才能宣告下列各項:
陣列界限
case 陳述式中的選取器
位元欄位長度規格
列舉初始設定式
常數運算式中合法的運算元包括:
常值
列舉常數
宣告為 const 並使用常數運算式初始化的值
sizeof運算式
非整數常數必須轉換成整數類資料類型 (明確或隱含),在常數運算式中才會是合法的。 因此,下列程式碼是合法的:
const double Size = 11.0;
char chArray[(int)Size];
對整數型別的明確轉換在常數表達式中是合法的;除了當做運算子的操作數使用以外,所有其他類型和衍生型別都是非法的 sizeof 。
逗號運算子和指派運算子不能在常數運算式中使用。