我应该包含另一个标题中包含的文件吗?

wro*_*ame 2 c++ class include code-readability

大多数情况下,当在程序中创建多个使用彼此的类时,我只想包含减少混乱所需的最少数量的头文件.

例如,假设类C继承自包含类A的类B.现在当然,因为类B包含类A作为成员,所以它需要包含a.h在中b.h.但是,让我们说C也需要包含a.h.像我一样懒惰,我只是包括b.h(C需要包括其中),并且由于b.h已经包含a.h,我不需要包含更多内容,并且它编译得很好.对于我的.cpp文件也是如此:我只包含标题,标题中包含的任何内容都将自动包含在我的.cpp文件中,所以我不在那里包含它.

这是我的坏习惯吗?它是否会降低我的代码的可读性?

Jim*_*som 6

我坚持使用这个简单的规则:包括完全声明给定类所需的所有内容,但不要更多,并且不要假设包含从其他来源引入,即确保您的文件是自给自足的.