解决 VSCode 编写 C++11 代码报红问题分析
问题描述
今天在写 C++ 代码的时候用上 C++11 的特性,然后发现 VSCode 虽然可以编译通过,但是会在相应位置报红,如下图所示。

并且在编译的时候遇到如下警告:
C1.cpp:62:14: warning: 'auto' type specifier is a C++11 extension [-Wc++11-extensions]
for (auto a : vec)
问题原因:
VSCode 根据编译参数,无法检测 C++11 相关语法,因此出现报红和 warning 等现象。
解决方法
可以按照如下图步骤执行:
- 点击下载的 C/C++ 插件中的小齿轮
- 选择 Extension Setting 选项
- 在 Compiler Args 的选项中,点击 Edit in setting.json

最后在弹出的 setting.json 文件中加入如下编译参数:
{
"C_Cpp.default.compilerArgs": [
"-g",
"${file}",
"-std=c++11",
"-o",
"${fileDirname}/${fileBasenameNoExtension}"
]
}
到此这篇关于解决 VSCode 编写 C++11 代码报红问题的文章就介绍到这了,更多相关 VSCode 编写 C++11 代码报红内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
文件编译时出现multiple definition of ''xxxxxx''的具体解决方法
以下是对文件编译时出现multiple definition of 'xxxxxx'的解决方法进行了详细的分析介绍,如也遇到此问题的朋友们可以过来参考下2013-07-07
Visual Studio 2019配置qt开发环境的搭建过程
这篇文章主要介绍了Visual Studio 2019配置qt开发环境的搭建过程,本文图文并茂给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-03-03
C 与 C++ 中的 const 常量与数组大小的关系对比分析
C和C++中数组大小通常要求是一个编译时常量,C语言中,const变量不能直接作为数组大小,需要使用#define或enum,C++中,const变量被视为常量表达式,可以作为数组大小,本文介绍C 与 C++ 中的 const 常量与数组大小的关系,感兴趣的朋友一起看看吧2025-02-02
VS2017开发C语言出现“no_init_all“的解决办法
这篇文章介绍了VS2017开发C语言出现“no_init_all“的解决办法,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2021-12-12


最新评论