提问人:Yana 提问时间:1/18/2023 最后编辑:Yana 更新时间:1/19/2023 访问量:223
无法将 Visual Studio Code 配置为使用 C++14 标准(即使我更改了一些设置,也使用 C++03 标准)
Can't configure Visual Studio Code to use C++14 standard (C++03 standard is used even though I changed some settings)
问:
我做了一个非常简单的应用程序,当我通过以下方式从终端构建和运行它时,该应用程序可以工作:
g++ -std=c++14 helloworld.cpp
./a.out
现在,我正在尝试配置 Visual Studio Code 来调试此应用程序。我做了:
- 设置 - >搜索“cppStandard” - >更改为用户和工作区的 c++14
- 添加 Debug 配置 -> C/C++:g++ 构建和调试活动文件
- 选择 -> 调试 C/C++ 文件。
错误显示:
'function\<void ()\>' is deprecated: Using std::function in C++03 is not supported anymore. Please upgrade to C++11 or later, or use a different type \[-Wdeprecated-declarations\]
IDE 还会标记以下代码:
std::function<void()> func = []() { std::cout << "From Thread ID : "<<std::this_thread::get_id() << "\n"; };
作为错误,显示:
class std::__1::function<void ()> 'function<void ()>' is deprecated: Using std::function in C++03 is not supported anymore. Please upgrade to C++11 or later, or use a different type [-Wdeprecated-declarations]gcc
编辑: 我正在使用带有 Apple 芯片的 macOS Ventura。 我添加了c_cpp_properties.json(通过:Control+Shift+P -> c/c++ 编辑配置)。
{
"configurations": [
{
"name": "Mac",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"macFrameworkPath": [
"/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks"
],
"compilerPath": "/usr/bin/clang",
"intelliSenseMode": "macos-clang-arm64",
"cppStandard": "c++14"
}
],
"version": 4
}
我仍然收到关于 C++03 与我的代码不兼容的相同错误,有什么建议吗?
答: 暂无答案
评论
tasks.json
c_cpp_properties.json
launch.json