在子目录中包含路径

时间:2014-06-06 12:44:21

标签: c++ qt include project

我有一个Qt C ++项目,其中文件被分成目录。

/
|
|-- dir1/
|   |
|   |-- toInclude1.h
|   |
|   |-- toInclude2.h
|
|-- dir2/
|   |
|   |-- toInclude1.h
|   |
|   |-- toInclude2.h
|
|-- main.cpp

据我所知,当我想要在文件main.cpp中添加例如toInclude1.h我只需要写

#include "dir1/toInclude1.h"

但如果我想在toInclude2.h中包含同一个文件,我可以写

#include "dir1/toInclude1.h"

#include "toInclude1.h"

对我来说,这似乎是一个很好的歧义来源,当有更多的头文件具有相同的名称但在不同的路径上时。

所以我的问题是在我的情况下应该从后两者中使用哪一个?

1 个答案:

答案 0 :(得分:0)

没有。你真的不应该#include在头文件中。如果您这样做,那么将所有thoose头文件放在单独的子子导向器中,并使头文件包含所有这些文件。在代码中使用该顶级头文件。