包含

时间:2015-06-19 00:45:03

标签: visual-studio visual-c++ visual-studio-2015

在使用VC ++并且无法访问默认包含应该是一个简单的问题时拉出我的头发。

安装Visual Studio 2015 RC后,我无法再构建C / C ++项目。我收到了#34; IntelliSense:无法打开源文件' *。h'"所有各种标准库* .h文件的错误。

我确认我的文件确实存在于默认位置(C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ VC \ include),如果我右键单击我的#include <cstdio>行编辑我可以选择&#34;打开文档&#34;它甚至会在编辑器中自动打开。

项目设置中的我的包含目录字符串是:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;C:\Users\Kristopher\Libraries\Includes;$(VC_IncludePath);$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSDK_IncludePath);‌

有没有其他人遇到这个?我觉得我忽略了一些简单的事情。

1 个答案:

答案 0 :(得分:2)

您的IncludePath不应直接指定Visual C ++和Windows SDK包含路径。相反,它应仅指定特定于项目的路径,并从常见C ++ MSBuild目标中定义的IncludePath派生。如,

<IncludePath>C:\Users\Kristopher\Libraries\Includes;$(IncludePath)</IncludePath>

解决您的特定情况:在Visual C ++ 2015中,大部分C运行时(CRT)已经重构为新的Windows操作系统组件Universal CRT。它的标题和库现在位于不同的位置,您的项目无法将此包含路径包含到IncludePath属性中。具体而言,您需要包含$(UniversalCRT_IncludePath)。有关详细信息,请参阅我今年早些时候撰写的文章"Introducing the Universal CRT."