c++ - 将 include 指令合并到一个文件中是一种好习惯吗

标签 c++ header-files

我认为一切都在标题中。

假设我们有一个具有这种结构的项目:

+ src
    main.cpp
    task1.cpp
    task2.cpp
+ includes
    main.h
    task1.h
    task2.h

两者都是task1.htask2.h使用 <QPushButton><QLabel> .

创建另一个头文件 ( core.h ) 并将其包含在内是个好主意吗

// core.h
#include <QPushButton>
#include <QLabel>

然后从每个task1.h调用它和 task2.h文件。

这样做有什么变化可以注意到吗(编译时间,编程限制,...)

最佳答案

只有在使用“预编译头文件”时才会这样做。否则它没有多大意义。

  • 尽可能使用前向声明。
  • 在需要完整声明类型的文件中添加 include。

在放置所有包含文件的地方使用头文件会使构建系统无法跟踪已更改文件的依赖关系。突然之间,您的所有代码都取决于您的 core.h header 。如果更改此 header ,则必须重新编译所有代码,即使没有实际更改。

关于c++ - 将 include 指令合并到一个文件中是一种好习惯吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22908420/

相关文章:

c++ - 为什么在头文件中定义类不会出现多重定义错误?

ios - 使用 CocoaPods 将头文件复制到包含文件夹

c - 在 Mac 上哪里可以找到 C 源代码?

c++ - C++ 的类和 header

java - 为什么要用栈而不是堆?

c++ - 指向抽象类型的指针数组

c++ - 如何使用 boost 库中的 integer_sort?

c++ - 使用 Strncpy 在 C++ 中创建一个简单的文本编辑器

c++ - 将比较函数传递给 qsort C++

c - 在哪里可以找到 off_t 类型的完整定义?