设计了一个业务类,需要依赖包含其它头文件。业务类是在.h文件中包含依赖头文件,还是在.cpp中包含依赖头文件
来源:8-14 头文件重复包含问题
慕少7118645
2021-04-22
设计了一个业务类class hello,需要用到第三方功能,第三方功能的头文件为other.h
hello.h文件
#include “other.h” //方式1包含
class hello
{
hello();
}
hello.cpp文件
#include "hello.h"
#include “other.h” //方式2包含
hello::hello(){}
上述两种方式的包含,一般用哪一种?有什么需要注意的。
写回答
1回答
-
一个基本的原则就是在类的头文件中最好不要包含其他头文件,因为这样会使类之间的文件包含关系变得复杂化。有时在工程中,一个类往往需要用到很多已有的类库及函数库,这时的做法是把那些经常用到的头文件加入到一个公共的头文件中,但要注意的是一些头文件也有依赖关系,否则就会出错。另外,为了防止重复包含,C++中经常会使用#ifndef,#defineh和#endifh宏来防止头文件重复包含。
10