我正在尝试在 VS 2008 上运行以下代码。
int main(){
for(int n: {0, 1, 2, 3, 4, 5}) // the initializer may be a braced-init-list
std::cout << n << ' ';
return 0;
}
但是编译器给了我以下警告:
error C2143: syntax error : missing ',' before ':'
在我看来,VS 2008 不支持循环范围。真的吗? 谢谢
最佳答案
您正在使用的范围 for
循环和初始化列表表示法均在 C++11 标准中引入。
最早支持 for
循环范围的 VC 编译器是 VC2013,但该编译器并未完全实现(甚至声称实现)C++11 标准。
(例如,它不允许您按照自己的方式使用初始化列表。)
你最好升级到VC2015。
关于c++ - 循环范围 : VS 2008 doesnt support it?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38217969/