visual studio 2010包含文件可以'看'但无法编译

时间:2011-10-15 11:17:00

标签: c++ visual-studio-2010 include-path

我确信这有一个非常简单的解决方案。

我正在尝试包含头文件。我添加了include目录。当我在引号中加入引号时,vs2010中的新功能现在告诉我它可以“看到”我想要包含的文件,并且工具提示将它引用到正确的目录中。

但是我在#include下面有一个红色下划线表示存在问题而且项目无法构建,因为它不能包含该文件。

我可以通过添加完整的相对路径来构建,但这有点乱。

总结

#include "myfile.h"  FAILS
#include "../../includes/myfile.h" WORKS

任何想法?

2 个答案:

答案 0 :(得分:2)

您必须在以下字段中添加../../includes

项目属性> C / C ++>一般>其他包含目录

有关详细信息,请访问相应的MSDN page

答案 1 :(得分:0)

如果

#include "myfile.h"

失败了,但是

#include "../../includes/myfile.h"

有效,这意味着在您的路径中包含include目录。假设你有这样的结构:

/project
   /src
      myfile.cpp   -> myfile.h included here
   /include
      /dir1
          myfile.h

您需要添加到包含目录./include/dir1/,而不仅仅是./project./include

使用<...>代替"..."只是告诉编译器首先查看系统包含目录,这样就没什么用了。回答说这是错误的。通常,您会将<...>用于标题,例如stringvector"..."类型包含您自己的标题。