我是c++和vscode的新手,所以我不确定如何解决这个问题。我在https://code.visualstudio.com/docs/cpp/config-clang-mac上尝试过这个教程,但我似乎无法粘贴他们的"hello world“代码,而不会出现iostream、vector和string错误。我还在这里看到一些帖子,指出我应该在配置中更改includePath字符串数组,但将路径添加到我的项目文件夹似乎并不能消除这些错误。我现在很困惑,因为到目前为止我所看到的一切都不能正常工作。
导致这些错误的代码是直接从上面的教程复制粘贴的:
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> msg {"Hello", "C++", "World", "from", "VS Code", "and the C++ extension!"};
for (const string& word : msg)
{
cout << word << " ";
}
cout << endl;
}
在前三行中,我得到了errors "cannot open source file {the included import's name}"
。编译器声明#include errors detected. Please update your includePath. Squiggles are disabled for this translation unit (/Users/rjc/projects/helloworld/helloworld.cpp).C/C++(1696)
我在我的includePath中添加了这一行( configurations页面声明每行添加一个includePath,所以我将这两个语句放在不同的行上):${workspaceFolder}/**
/Users/rjc/projects/helloworld/
然而,这并没有减少错误的数量。我真的不确定要在这里做什么,因为这个教程似乎对我不起作用。
我正在使用clang版本12.0.0运行macOS Big Sur (11.1)。如果您能凭直觉了解我为什么会有这些问题,我将非常感激。
发布于 2020-12-23 16:45:34
您的includePath只有${workspaceFolder}。您需要将路径添加到系统目录。运行此命令并确保输出的所有路径都列在您的c_cpp_properties.json中:gcc -v -E -x c++ -
发布于 2021-08-05 12:39:17
确保compilerPath
设置中的编译器存在并且支持C++。
我在一个没有C++ cpp支持的(centos)系统上看到了这些stdlib包含的错误。安装缺少的软件包修复了vscode中的错误。无法从终端编译hello.cpp清楚地表明我的根本问题不是vscode。
发布于 2021-11-11 12:31:07
我也有同样的问题,我想尽一切办法让它正常工作。
然后我意识到,当我将文件命名为helloworld时,我只将其命名为helloworld,而不是后面的helloworld.cpp,因为在我使用的其他IDE中并不需要这样做。
https://stackoverflow.com/questions/65421161
复制相似问题