【问题标题】:Eclipse C++ including header file from my source folderEclipse C++ 包括来自我的源文件夹的头文件
【发布时间】:2012-10-29 05:03:33
【问题描述】:

总的来说,我对 C++ 和 Eclipse 还很陌生,所以如果我遗漏了一些相当明显的东西,我深表歉意。

我遇到的问题是我试图在我的一个源文件中包含一个头文件,但它们位于我的项目目录中的不同文件夹中。我不知道我应该如何包括他们。我上传了一张图片,显示了我要突出显示的头文件的问题。

如果有人能告诉我我应该使用什么“#include”语句,那就太好了。

谢谢!

【问题讨论】:

  • 非常感谢大家,现在一切正常:)

标签: c++ eclipse header include include-path


【解决方案1】:

当您在 src 文件夹中创建子文件夹时,每个 cpp 文件都会在它所在的文件夹中编译。因此,任何 "" 包含需要指定从该文件夹到另一个文件夹的相对路径。

在您的情况下,要从 FileInOut 文件夹中获取,您需要返回一级,然后进入 Statistics 文件夹

例如

#include "../Statistics/Statistics.h"

另一种选择是,如果您将包含在您的 src 目录中,则将 src 目录添加到包含路径中。现在,当您包含时,您只需指定来自 src 根目录的路径。

例如。

#include "Statistics/Statistics.h"

【讨论】:

    【解决方案2】:

    有几个不同的选项可以完成这项工作。最简单的就是把#include改成

    #include "../Statistics/Statistics.h"
    

    这将在没有任何其他修改的情况下工作。但是,如果您移动任一文件,或以某种方式更改两者之间的相对路径,这将中断。

    或者,您可以将Statistics 文件夹的路径添加到编译器的包含文件搜索路径中。右键单击项目名称,选择 Properties -> C/C++ Build -> Settings,然后找到编译器的包含文件路径选项。对于 g++,它是-I<path/to/include/folder>。添加这将使#include 语句像您当前拥有的那样工作。

    与第二个选项非常相似的选项是将src 文件夹的路径(而不是Statistics 文件夹)添加到包含搜索路径。在这种情况下,您必须将语句更改为

    #include "Statistics/Statistics.h"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-23
      • 2017-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多