头文件被多次包含的解决办法

文件的一个不利之处在于一个头文件可能会被多次包含,为了说
明这种错误,考虑下面的代码:
#include"x.h" 
#include"x.h" 
显然,这里文件x.h被包含了两次,没有人会故意编写这样的代码。但是
下面的代码:
#include"a.h" 
#include"b.h" 
看上去没什么问题。如果a.h和b.h都包含了一个头文件x.h。那么x.h
在此也同样被包含了两次,只不过它的形式不是那么明显而已。 
多重包含在绝大多数情况下出现在大型程序中,它往往需要使用很多头文
件,因此要发现重复包含并不容易。要解决这个问题,我们可以使用条件编译。
如果所有的头文件都像下面这样编写: 
#ifndef _HEADERNAME_H 
#define _HEADERNAME_H 
.//(头文件内容) 
#endif 
那么多重包含的危险就被消除了。当头文件第一次被包含时它被正常处
理符号_HEADERNAME_H被定义为1。如果头文件被再次包含通过条件编译

猜你喜欢

转载自blog.csdn.net/u012625379/article/details/78031746