最近我遇到了以这种方式处理头文件的代码。
会有一个名为 say global.h
的头文件
此 global.h
将包含一些其他头文件,例如,
#include "settings.h"
#include "math.h"
#include "somelibrary.h"
#include "someOtherlibrary.h"
...
现在,每当某些文件想要包含 somelibrary.h
时,而不是编写
#include somelibrary.h
它只会包含 global.h
。
所以项目中的每个源文件只有:#include "global.h"
这是避免在每个源文件中编写许多包含的常用方法吗?还有什么其他好处
附言。额外:如果有人能解释为什么这有效,那就太好了
最佳答案
唯一的好处是易于包含。
缺点是每次更改头文件时,都必须重新编译所有内容。对于任何更大的项目,这都是一件大事。
这也让删除或更改现有模块变得很痛苦,因为您无法通过简单搜索特定包含来大致了解它的使用位置。
只是不要这样做。
编辑:
澄清一下:如果需要执行 X,可以将标题分组为一个。但是我在实践中很少需要这样做;编写 #include "xxxxx.x"
并不难。
对于执行 X、Y 和 Z 的整个应用程序,在一个 header 中包含所有内容是不可行的。
关于c - 包含多个头文件的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21155499/