五、有虚函数,多继承的类内存结构:
class C
{
public:
virtual C1(){return 1;};
virtual C2(){return 2;};
setc(int x){c = x;};
private:
int c;
};
class B
{
public:
virtual B1(){d1=1;};
virtual B2(){d2=2;};
private:
int d1;
int d2;
};
class A
{
public:
int sum(){return a1+a2;};
virtual A1(int x,int y){a1 = x;a2 = y;};
virtual A2(){a3=0;};
virtual A3(int x){a3 = x;};
virtual A4(){a1*a2*a3;};
private:
int a1;
int a2;
int a3;
};
class D:public A,public B,public C
{
public:
virtual D1(int x,int y){d1=x+10;d2=y+10;d3=d1*5;d4=d2*7;};
virtual D2(){return 8;};
private:
int d1,d2,d3,d4;
};