数组维度必须在编译时已知,这意味着维度必须是常量表达式
一个单独的观点是
unsigned count = 42; // not a constant expression
constexpr unsigned size = 42; // a constant expression
我会,然后期望以下声明失败
a[count]; // Is an error according to Primer
然而,事实并非如此。编译并运行良好。
同样奇怪的是,++count;
数组声明之后也没有引起任何问题。
-std=c++11
使用标志编译的程序g++4.71
这是为什么?