【问题标题】:How to change c++ version being used by vscode?如何更改 vscode 使用的 c++ 版本?
【发布时间】:2021-03-17 19:41:50
【问题描述】:

我打印了__cplusplus,发现我的文件是在 VSCode 中使用 C++98 执行的。这是我学习 C++ 的第一天,所以我不知道如何将其更改为 C++17。有人可以指导我如何解决这个问题吗?

编辑:我正在使用代码运行器扩展。

【问题讨论】:

  • 您需要更新您的tasks.jsonc_cpp_properties.jsontasks.json 配置编译器构建代码的方式。 c_cpp_properties.json 在编辑器中配置智能感知。您可能还需要升级编译器。如果您在 MS Windows 上使用 mingw,您可能需要使用 msys2 版本,它为您提供最新的编译器,便于安装和升级,还支持许多库
  • @drescherjm 我该如何更新它们?
  • 如果您知道编译器命令行开关,Microsoft 文档中会介绍这些文件:https://code.visualstudio.com/docs/cpp/config-mingw
  • tasks.json 用于 ctrl-B 键。我不知道 coderunner 扩展是否完全使用它,因为它必须根据当前活动的源文件动态构建命令。
  • 你没有说你在什么平台上,也没有说你正在使用哪个编译器。但是,在 VSCode 的终端窗口中,直接运行编译器命令以查看它在路径上找到的编译器;例如g++ --version。在运行 VSCODE 之前,请确保为所需的编译器设置了路径。

标签: c++ visual-studio-code


【解决方案1】:

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

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

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

现在点击搜索栏(有时它会让您点击两次才能在不替换扩展过滤器的情况下输入)并输入 cppStandard

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

将 Cpp 标准更改为您想要的版本。我一般用c++17。

【讨论】:

    【解决方案2】:

    另外,请确保您的调试器使用相同的版本。在 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"
    }
    

    【讨论】:

    • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
    猜你喜欢
    • 2022-11-04
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 2017-08-17
    • 2012-04-03
    • 2016-08-13
    相关资源
    最近更新 更多