错误在msdn页面“ C ++ Constant表达式”?

它在msdn页面上说c ++常量表达式:   非整数常数必须是   转换(明确或   含蓄地)到整数类型   在不断表达中合法。   因此,以下代码是   法律:
const double Size = 11.0;
char chArray[(int)Size];
至少在VC ++ 10.0上,第二行产生:“错误C2057:预期的常量表达式”。那么它在某些其他编译器上是合法的还是msdn页面完全错了?     
已邀请:
根据5.19 / 1:   一个整数常量表达式可以   仅涉及文字(2.13),   调查员,
const
变量或   静态数据成员的积分或   使用初始化的枚举类型   常量表达式(8.5),非类型   模板参数的积分或   枚举类型和
sizeof
  表达式。浮动文字   (2.13.3)只有在出现时才会出现   投入到整数或枚举   类型。 根据我的理解,代码无效,而以下是合法的:
char chArray[(int)11.0];
    
根据标准C ++,这是不合法的。有关规范中的规则,请参见5.19 / 2。     

要回复问题请先登录注册