关于相互交叉类
如何实现类的相互引用,我看网上有人说将一个类提前声明就行了,可我试了怎么不行啊.代码如下:VC6下不能通过编绎,提示:error C2079: 'b ' uses undefined class 'B '
#include <iostream.h>
class B;
class A
{
public:
B b;
};
class B
{
public:
A a;
};
void main()
{
A a;
}
[解决办法]
class B;
class A
{
public:
B * b;
};
class B
{
public:
A * a;
};
改成指针或者引用都是可以的,你的方式是不可实现的,因为存在逻辑上的错误,就像这样
class A
{
A a;
};