VS Code无法检测标准C ++库

时间:2017-03-19 14:37:06

标签: c++ visual-studio-code standard-library c++-standard-library

我开始使用VS Code,在搞砸了它后,我设法用c_cpp_properties.json检测Windows和Direct3D SDK,但是我没能使标准库工作。所以,如果我这样做:

#include <string>
#include <vector>

它会像我这样抛出一个错误:

//Include file not found in include path

我在网上搜索过并没有发现任何线索,所以我来了!奇怪的是,如果我只是在窗口/编辑器中创建一个新的.cpp文件,它就可以了。但是当我'加载'该文件所在的文件夹时,它就会失败。所以,这真让我疯狂。

我正在使用Windows 10,.NET 4.6.2,2015 Visual C ++ Redist和Windows 10 SDK,从今天开始全新安装。我的最终目标是将我在VS2013中制作的项目移植到GNU / Linux,所以我试图让事情一步一步地发挥作用。

事先非常感谢!

编辑:使用g ++编译工作正常,即使VS Code抱怨。 This is what happens.

2 个答案:

答案 0 :(得分:0)

VS Code需要找到包含库。

  1. 首先找到g ++所在的位置。你提到它工作正常。这是一个.exe文件(windows)。所以你可以在路径设置中找到g ++目录。 view path variables.

  2. 现在获取g ++。exe目录后,您可以在附近的文件夹或父文件夹中轻松找到文件名 string 。成功找到后,复制其完整路径。

  3. 现在回到VS Code中,将光标放在绿色下划线上,你会看到一个灯泡。点击它,在选项中您会看到选项修改“includePath”设置更新“browse.path”设置。选择它,将打开一个名为 c_cpp_properties.json的文件

  4. 现在在该文件中找到“name”:“win32”。在包含路径选项中粘贴 string 文件的目录名称,这样你就可以了。

  5. like this

答案 1 :(得分:0)

在vscode中,转到文件>首选项>设置,然后选择edit in settings.json(这可能很难找到,某些设置具有此选项,而其他设置则没有。访问此文件可能是更好的方法,但我不知道)

这将打开settings.json文件,您可以在其中添加以下行:

    "C_Cpp.default.includePath": ["C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\include"]

(或任何包含路径),这将为所有项目或仅当前工作空间添加包含路径,具体取决于您是否打开“用户设置”或“工作空间设置”的settings.json文件