开发平台(Platform): VC++ 2012
问题(Question):
宣告静态阵列的引数必须要用常数,我这样做应该可以编译
但实际上却出现Error
error C2057: 必须是常数运算式
error C2466: 无法配置常数大小为 0 的阵列,常数必须为大于 0 的整数
error C2087: 'test' : 遗漏注标
error C2133: 'test' : 未知的大小
程式码(Code):
int main()
{
const int a[3] = {2,3,4};
double test[a[0]][a[1]][a[2]];
return 0;
}
补充说明(Supplement):
若将分成三行宣告,则编译没问题
const int a0 = 2;
const int a1 = 3;
const int a2 = 4;