当包含一个您知道已被另一个包含包含的文件时,惯例是什么?
示例: Base 类在“base.h”中声明,并且有一些子类。 Base 有一个虚拟方法 foo(Bar& bar),因此包含“bar.h”。从正确约定的角度来看,考虑到子类包含“base.h”,其中包含“bar.h”,我们是否也应该在子类中包含“bar.h”?
最佳答案
由于函数的声明只需要声明参数,因此您需要包含相应的 header 。对于已知的基类或非私有(private)
数据成员类型,需要包含定义。由于其他所有内容要么只需要声明,要么是实现细节,因此您不应依赖包含的间接 header 。
关于c++ - 包含已知已包含的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27208792/