【发布时间】:2021-12-10 20:22:52
【问题描述】:
我在c_cpp_properties.json中有如下配置:
{
"configurations": [
{
"name": "Win32",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [
"_DEBUG",
"UNICODE",
"_UNICODE"
],
"browse": {
"path": [
"C:/MinGW/lib/gcc/mingw32/6.3.0/include",
"C:/MinGW/lib/gcc/mingw32/6.3.0/include-fixed",
"C:/MinGW/include/*",
"${workspaceRoot}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"compilerPath": "C:/MinGW/bin/g++.exe",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "gcc-x64"
}
],
"version": 4
}
我的 C++ 代码是:
#include <string_view>
using namespace::std;
但是,我得到“有#include 错误。请更新includePath”。但是不知道怎么更新。
我在 VS Code 上运行它。
GCC 版本 - 6.3.0
C++ 标准 - c++17
项目结构:
【问题讨论】:
-
std::string_view是在 GCC 7 中添加的。您使用的似乎是 6.3 版本,太旧了。 -
但是别人说c++17有string_view,但是为什么我不能用...? (感谢您的评论!我会添加我的 gcc 版本)
-
是的,它已添加到 C++17 标准中。但是 GCC 6.3(您似乎在使用)并不完全支持 C++17。您至少需要使用 GCC 7.0。请记住,GCC 现在是 11 版。
-
真的谢谢...我用MinGW来安装gcc,我更新了MinGW,但它的gcc版本还是6.3.0。 6.3.0版本是MinGW能支持的最新版本吗?
-
@hyeminju 你可以使用 msys2 或 mingw-w64 -- PS:
using namespace::std;应该是using namespace std;。
标签: c++ visual-studio-code c++17 string-view