主题:[讨论]救急:大家给帮我想想这个类的层次结构应该怎么设计?
我想设计两个类,而且这两个类都公有继承了一个父类。但是我在两个子类中分别都要用到彼此作为一个成员函数的参数。结果我用以下的设计去出现了后面定义的类(class C)不被前面的类(class B)认识而报错
class A
{ }
class B:public A
{
public:
void disp( C &c1)
{ }
};
class C:public A
{
void disp(B b1)
{}
};
我本想用到虚继承的方式。在两个类的成员函数中的参数都用class A类来代替。可是
因为子类新增的东西不是父类的成员而报错
(如:B::disp(A a1)不是class A的成员
请问这几个类的我该怎么设计呢?
class A
{ }
class B:public A
{
public:
void disp( C &c1)
{ }
};
class C:public A
{
void disp(B b1)
{}
};
我本想用到虚继承的方式。在两个类的成员函数中的参数都用class A类来代替。可是
因为子类新增的东西不是父类的成员而报错
(如:B::disp(A a1)不是class A的成员
请问这几个类的我该怎么设计呢?