如何更改 VS Code 中使用的 C++ 语言标准版本?

Hil*_*to1 16 c++ visual-studio-code

我打印了宏的值__cplusplus,发现我的文件是在 Visual Studio Code 中使用 C++98 执行的。我正在使用 CodeRunner 扩展。

如何将其更改为 C++17?

Dea*_*ltz 32

转到扩展程序,然后ms-vscode.cpptools在搜索栏中输入。

单击C/C++扩展程序,在 的右侧Uninstall应该有一个齿轮图标。点击它。

应打开一个下拉菜单。选择Extension Settings

现在单击搜索栏(有时它会让您单击两次,然后才能键入而不替换扩展过滤器)并键入 cppStandard

从这里,您应该看到两个选项,一个用于 Cpp 标准,一个用于 C 标准。

将 Cpp Standard 更改为您想要的版本。我一般用c++20。

在此输入图像描述

  • 如果 vscode intellisense 仍然无法检测到高于 C++14 的标准。尝试使用“C/C++:编辑配置 (UI)”在命令选项板(ctrl+p 或 ctrl+shift+p)中搜索。然后检查此 UI 中的“C++ 标准”。我发现它被设置为“C++14”,而“ms-vscode.cpptools”被设置为“C++20”。 (5认同)

小智 10

另外,请确保您的调试器使用相同的版本。在task.json中,后面的行--std定义了版本。

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: g++.exe build active file",
            "command": "C:\\msys64\\mingw64\\bin\\g++.exe",
            "args": [
                "--std",
                "c++20",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}\\${fileBasenameNoExtension}.exe"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}
Run Code Online (Sandbox Code Playgroud)