我认为一切都在标题中。
假设我们有一个具有这种结构的项目:
+ src
main.cpp
task1.cpp
task2.cpp
+ includes
main.h
task1.h
task2.h
task1.h
和task2.h
都使用<QPushButton>
和<QLabel>
。
创建其他头文件(core.h
)并将此包含放入
// core.h
#include <QPushButton>
#include <QLabel>
然后从每个task1.h
和task2.h
文件中调用它。
这样做时是否有任何变化可以被注意到(编译时间,编程限制......)
答案 0 :(得分:4)
如果您使用的是“预编译标头”,则只能执行此操作。否则它没有多大意义。
使用包含所有包含文件的头文件使构建系统无法跟踪已更改文件的依赖关系。突然间,您的所有代码都取决于您的core.h
标头。如果更改了此标头,则必须重新编译所有代码,即使没有实际更改。
答案 1 :(得分:1)
IMO核心标题是很好的做法:
core.h
无法很好地扩展到中型或大型项目。这种方法存在一些问题: