我从SourceForge(HoboCopy,如果你很好奇)检查了一份C ++应用程序的副本并尝试编译它。
Visual Studio告诉我它无法找到特定的头文件。我在源代码树中找到了该文件,但是我需要在哪里放置它,以便在编译时找到它?
是否有特殊目录?
答案 0 :(得分:99)
Visual Studio按以下顺序查找标题:
在您的情况下,将标题所在的目录添加到项目属性中(项目属性→配置→ C / C ++ →< em>常规→其他包含目录)。
答案 1 :(得分:11)
如果项目附带Visual Studio项目文件,则应该已经配置为找到标题。如果没有,则必须通过右键单击项目并选择“属性”,单击“C / C ++”,并将包含包含文件的目录添加到“其他包含目录”,将包含文件目录添加到项目设置中。编辑框。
答案 2 :(得分:7)
实际上,在带有Visual Studio 2017社区的Windows 10上,C ++标头路径为:
200
C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.15.26726\include
第一个包含标准的C ++标头,例如C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt
,<iostream>
。第二个包含旧的C标头,例如<algorithm>
,<stdio.h>
。版本号可能因您的软件而异。
希望这会有所帮助。
答案 3 :(得分:6)
尝试将此添加为对Rob Prouse发布的评论,但缺乏格式化使其无法理解。
在Visual Studio 2010中,“工具|选项|项目和解决方案| VC ++目录”对话框报告“已弃用”工具&gt;选项中的VC ++目录编辑“,建议您使用反向直观的Property Manager。
如果你确实想要更新默认的$(IncludePath),你必须在其中一个XML文件中破解相应的条目:
\ Program Files (86)\的MSBuild \ Microsoft.Cpp \ V4.0 \平台\的Win32 \ PlatformToolsets \ V100 \ Microsoft.Cpp.Win32.v100.props
或
\ Program Files (86)\的MSBuild \ Microsoft.Cpp \ V4.0 \平台\ 64 \ PlatformToolsets \ V100 \ Microsoft.Cpp.X64.v100.props
(可能不是微软推荐的。)
答案 4 :(得分:5)
Visual Studio 2015社区中似乎存在错误。对于64位项目,除非在win32位配置其他包含文件夹列表中,否则找不到包含文件夹。
答案 5 :(得分:3)
有一个更新的问题是什么问题更好地问How do include paths work in Visual Studio?
在较新版本的VisualStudio
中,有人发现了这样做的方法第二个问题是史蒂夫威尔金森上面的答案解释了什么,正如他认为的那样,不是微软会推荐的。
这里说它的短路:做它,但是在
的用户目录中进行C:\ Users \用户名\应用程序数据\本地\微软\的MSBuild \ V4.0
在XML文件中
Microsoft.Cpp.Win32.user.props
和/或
Microsoft.Cpp.x64.user.props
而不是在C:\ program files - 目录中,预计Microsoft的未经修改的Factory-File将驻留在该目录中。
然后你按照VisualStudio的方式进行操作,一切都是正常的。
如需更多信息,为什么要这样做,请参阅我的回答there。