class A
{
public:
A(int i) { cout << i; }
~A() { }
};
class B : virtual public A
{
public:
B(int i, int j = 0) : A(j)
{
cout << i;
}
~B() { }
};
class C : virtual public A
{
public:
C(int i, int j = 0) : A(j)
{
cout << i;
}
~C() { }
};
class D : public C, public B
{
C obj2;
B obj1;
public:
D(int a, int b, int c, int d) : obj1(a), obj2(b), B(c), C(d), A(a)
{
cout << b;
}
};
void main()
{
D d(1, 2, 3, 4);
}
回答不易,求求您采纳点赞哦
C++中,继承是一种将基类(父类)的属性和方法复制到派生类(子类)的过程。通过继承,派生类可以在保留基类的属性和方法的同时,添加自己的属性和方法。
在继承中,基类通常称为父类,派生类称为子类。子类继承父类的成员,并可以在此基础上添加自己的成员。这样,子类就可以共享父类的代码,从而提高代码的重用性。
继承语法:
class 派生类名 : 访问控制符 基类名
{
// 派生类的成员
};
访问控制符可以是 public、protected 或 private,它们决定了派生类继承基类成员的可见性。例如,如果访问控制符为 public,则继承的成员是可见的。
不知道你这个问题是否已经解决, 如果还没有解决的话: