关于继承的问题--急哦
在card.h文件中
typedef truct tagCARD
{
....
}CARD;
class CCardBitmap
{
}
class CCard
{
CCardBitmap m_cardBitmap;
CARD m_card;
}
card0.h中
#include "card.h"
class card0:public CCard
{
}
card1.h中
#include "card.h"
class card1:public CCard
{
}
card2.h中
#include "card.h"
class card2:public CCard
{
}
card3.h中
#include "card.h"
class card3:public CCard
{
}
问题:
card.h(47) : error C2011: 'tagCARD' : 'struct' type redefinition
card.h(62) : error C2011: 'CCardBitmap' : 'class' type redefinition
card.h(76) : error C2011: 'CCard' : 'class' type redefinition
我原来把card0,card1,card2,card3多放在card.h文件中是可以的,但是分出来就不行了,
我很菜,这个大概是基础问题,不懂啊,还是要出来问问地^_^
问题点数:20、回复次数:7Top
1 楼xuweiqun(打雷啦)回复于 2005-06-02 22:57:48 得分 0
比较急,先顶一下Top
2 楼newcore(to be or not to be, it's a question.)回复于 2005-06-02 23:04:47 得分 10
估计是.h多了,重复包含之...
在头文件中加上预编译指令:
#ifndef _xxx_H
#include _xxx_H
.....
#endif
Top
3 楼xuweiqun(打雷啦)回复于 2005-06-02 23:15:18 得分 0
不知道你指的是哪个头文件???Top
4 楼xyw2278(启明星)回复于 2005-06-02 23:34:17 得分 8
//在card.h文件中
#ifndef _CARD_H
#define _CARD_H
typedef truct tagCARD
{
....
}CARD;
class CCardBitmap
{
}
class CCard
{
CCardBitmap m_cardBitmap;
CARD m_card;
}
#endif
Top
5 楼wanshi_53(幻相)回复于 2005-06-02 23:55:17 得分 2
同意
避免多次重复编译Top
6 楼xuweiqun(打雷啦)回复于 2005-06-03 09:26:23 得分 0
也就是说,我在多个.H文件中用到 card.h文件,那么card.h中就要
如:xyw2278(启明星)说的那样了,是吗?Top
7 楼xuweiqun(打雷啦)回复于 2005-06-03 09:30:17 得分 0
解决了,谢谢Top




