问题:在ubuntu16.04操作系统下,vscode中配置完成c++环境后,c++源代码对c++11的语法会报错,如图:

如图:auto类型变量和范围for循环报错。
但是仍然可以运行出正确结果。。。
在尝试了其他博主所说的在tasks.json文件的args参数中添加“-std=c++11”之后依然报错。
于是上vscode的官网查询用户手册,网址:https://code.visualstudio.com/docs/cpp/config-linux

手册中提到:如果希望更改c++标准,需要在c_cpp_properties.json中设置即可,于是打开c_cpp_properties.json文件,

可以看到这里的cppStandard仍然是“gnu++98”,将其改为“gnu++11”,保存。再回到源程序观察,报错消失~

问题解决~
综上,遇到解决不了的问题,上官网查看手册比在csdn上看各种copy的帖子有用~
在Ubuntu16.04的VSCode中,配置C++环境后,使用C++11语法如auto和范围for循环时出现报错。尝试在tasks.json的args参数添加-std=c++11未解决问题。查阅VSCode官方手册后,发现需在c_cpp_properties.json中修改cppStandard为gnu++11。修改后,报错消除,成功支持C++11。
1361

被折叠的 条评论
为什么被折叠?



