首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

头文件的包含有关问题

2012-08-10 
头文件的包含问题有两个头文件:A.h和B.h,这两个头文件中只是类的声明(为了简化问题,两个头文件中分别只有

头文件的包含问题
有两个头文件:A.h 和B.h,这两个头文件中只是类的声明(为了简化问题,两个头文件中分别只有一个类的声明),而且对应两个cpp文件:A.cpp和B.cpp,还有一个main.cpp。前两个cpp文件中是定义的类的具体实现。这些文件都在一个工程当中。我的问题是,在B.h中如果include了A.h,因为B.h中的类的数据成员或者成员函数要用到A.h中声明的类,而且在main.cpp中include了A.h,B.h,这会造成什么问题吗?????????????是不是重复包含?
如果有什么问题的话,该如何解决??希望各位能帮忙解答。

[解决办法]
防重复引用定义啊
#ifndef
#define
#endif
[解决办法]
重定义会出错“class type redefinition”
就用上面两楼的方法就OK啦!

[解决办法]
防止重复定义也可以用#pragma once
[解决办法]
我感觉如果B里面有A,那么MAIN.CPP就不需要再INCLUDE A了吧。只引入B.H,那么A里面定义的类就可以直接实例化个对象出来了。
[解决办法]
重复包含!可以在头文件中用宏避免重复定义:

#ifndef 宏 
#define 宏

头文件定义

#endif

热点排行