当我创建一个将由多个开发人员使用的头文件时,是否认为是一种良好的编程习惯,使该头文件在其中使用的所有定义和声明方面自给自足。
例如:
头文件 1:types.h
#ifndef TYPES_H
#define TYPES_H
typedef unsigned int uint16
#endif
头文件2:myheader.h
#ifndef MYHEADER_H
#define MYHEADER_H
uint16 myfunc(void);
#endif
我在 myheader.h 中使用了 uint16 ,但不包括 types.h 。因此,如果有人想在他们的源文件中包含 myheader.h,他们应该首先包含“types.h”,然后包含“myheader.h”。所以这实际上是在迫使开发人员以特定的顺序包含头文件。我一直认为这是不好的做法,但今天我在公司遇到了一些代码,在其中获取在一个文件中声明的函数,您需要包含至少 4 个其他头文件。所以现在我很困惑,我是否遗漏了什么,是否有任何地方可以将其视为预期行为。