include头文件什么情况应该放到CPP中,什么情况应该放到H文件中?
小弟对#include "xxx.h"应该放到H文件还是CPP文件总是不得要领,请高手解释一下。 问题点数:50、回复次数:9Top
1 楼happyparrot(快乐鹦鹉)回复于 2005-08-31 10:08:33 得分 10
很简单阿,如果头文件中定义变量(包括成员变量以及函数参数类型)需要用到某个头文件中的定义,那么就需要在.h中包含该头文件;否则,如果只是在cpp中编写函数代码时需要用到某个头文件中的定义,那么只需要在cpp中包含该头文件就可以了。Top
2 楼i_noname(晚九朝五)回复于 2005-08-31 10:13:54 得分 10
一般放在cpp中就可以了,但如果用到别的类对象作为成员的话就要在.h中include
////////a.h//////////
class A
{
...
}
======================
///////b.h//////////
class a;
class B
{
A *pa;
}
///////b.cpp/////////
#include "a.h"
======================
///////c.h///////////
#include "a.h"
class C
{
A aa;
}Top
3 楼Kaile(领头羊)回复于 2005-08-31 10:25:22 得分 0
我现在全部放在h文件中,要不要修改一下?Top
4 楼laiyiling(陌生人[MVP])回复于 2005-08-31 10:37:41 得分 10
我的建议是尽可能在头文件里声明类,CPP文件里包含头文件,如果需要。比如一个类,可以在头文件里class ClassName;这样编译的效率要高一些Top
5 楼happyparrot(快乐鹦鹉)回复于 2005-08-31 10:42:12 得分 10
我现在全部放在h文件中,要不要修改一下?
===最好改一下。Top
6 楼shangguancheng(潜龙勿用)回复于 2005-08-31 10:42:20 得分 0
这个要看具体情况了Top
7 楼mynamelj(风动,帆动,仁者心动)回复于 2005-08-31 11:58:28 得分 0
內联函数放在头文件中,一般的如果类比较大或是比较复杂应分别以头文申明源文件实现.Top
8 楼qinxiaogang(qinxg)回复于 2005-08-31 12:02:53 得分 10
最好放在CPP里,可以防止h的第归包含Top
9 楼MuseIn(air supply * 学好Linux)回复于 2005-08-31 12:06:02 得分 0
需要的时候就包含,不需要的时候就不不包含Top
相关问题
- 奇怪,谁知道为什么头文件引用放到.h中就出现LNK2005错误,放在.CPP中就没问题.
- 奇怪,谁知道为什么头文件引用放到.h中就出现LNK2005错误,放在.CPP中就没问题.
- 奇怪,谁知道为什么头文件引用放到.h中就出现LNK2005错误,放在.CPP中就没问题.
- 我可不可以把自己写的一个.h和.cpp文件放到vc库函数的那个目录下,然后像库函数一样调用啊?
- 请教;如果我自定义一个类,把所有代码都放到一个.h文件中和放在.h与.cpp两个文件中有什么区别?
- 在.h文件中包含头文件和在.cpp文件中包含头文件有什么区别?
- 请问在cpp及hpp/h文件中饱含头文件有什么不同?
- 创建新类一定要生成相应的cpp文件和h文件吗?
- CBC生成的文件中 *.~cpp、*.~h、*.~dfm是临时文件吗?怎么消除?
- 头文件包含在 .cpp 文件中和包含在 .h 文件中有什么区别?





