C++ 定数式
C++ では、次の宣言に定数式 (定数に評価される式) が必要です。
配列の境界
case ステートメントのセレクター
ビット フィールドの長さの指定
列挙型の初期化子
定数式で有効なのは、次のオペランドのみです。
リテラル
列挙定数
定数式で初期化され、const として宣言される値
sizeof 式
定数式で有効にするには、非整数型の定数を (明示的または暗黙的に) 整数型に変換する必要があります。 したがって、次のコードは有効です。
const double Size = 11.0;
char chArray[(int)Size];
定数式では、整数型への明示的な変換は有効です。sizeof 演算子へのオペランドとして使用する場合を除き、他のすべての型とその派生型は無効です。
コンマ演算子および代入演算子は定数式では使用できません。