【发布时间】:2011-02-28 18:21:24
【问题描述】:
标准说,在 5.17/9 下
braced-init-list 可能会出现在
定义的赋值
的右侧 - 对标量的赋值 [...]
- 由用户定义的赋值运算符 [..]
在 GCC 4.5.1-pre9999 中,我可以编译它(使用 -std=c++0x,而不是 -std=gnu++0x)
#include <iostream>
int main()
{
int test[] = {1,2,3};
std::cout << test[0] << test[1] << test[2];
test = {4,5,6};
std::cout << test[0] << test[1] << test[2] << std::endl;
}
它会打印出123456。 GCC 在这里正确吗?
【问题讨论】:
-
投票关闭,因为这太本地化了,这是现在过时的编译器版本中的一个错误。
标签: c++ c++11 g++ language-lawyer standards-compliance