在子目录中包含路径
Include path in subdirectory
我有一个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"
对我来说,这似乎是一个很好的歧义来源,当有更多的头文件具有相同的名称,但在不同的路径。
所以我的问题是,在我的情况下,应该使用后两个中的哪一个?
No。您真的不应该在头文件中使用#include
。如果您这样做,那么将所有这些头文件放在单独的子-子-目录中,并让一个头文件包含所有这些头文件。在你的代码中使用这个顶级头文件
相关文章:
- 如何使用cppcheck处理半相对包含路径
- CMake 错误"源似乎不包含 CMakeLists.txt",路径/库连接问题
- 检查路径是否包含C++中的另一个路径
- 如何确定包含路径的来源?
- CMake 错误 - 目标 foo INTERFACE_SOURCES属性包含在源目录中以前缀为前缀的路径
- 如何在内核中添加包含库的路径?
- 生成文件缺少包含路径 尽管路径存在并已定义
- 更改包含路径
- CMake 包含/源路径有效配置
- 在 Android Studio 中添加 C/C++ 的包含路径
- Tensorflow包含C++的路径
- 如何在不包含完整的文件系统头的情况下使用文件系统的类路径C++17?
- 在 Visual Studio 2010(及更高版本)中定义包含或链接路径变量的位置
- Eclipse IDE C/C++ 自动包含来自定制构建脚本的路径
- 如何设置 CMake 来构建包含路径包含的代码,如 #include < libdir/lib>?
- 崇高文本 3 - 在终端中编译并运行 C++ 程序(路径包含空格)
- QDesktopServices::openUrl() 如果路径包含空格("apt-get upgrade" 后)失败
- boost文件系统3路径包含检查
- C++库路径包含
- 如何使用Boost Filesystem Library v3确定文件是否按路径包含