测试代码:
#include<iostream>
using namespace std;
class base1{
protected:
int m;
public:
base1(int x){m=x;cout<<"base1 created"<<endl;}
~base1(){cout<<"base1 deleted/n";}
};
class base2{
protected:
int n;
public:
base2(int x){n=x;cout<<"base2 created"<<endl;}
~base2(){cout<<"base2 deleted/n";}
};
class derive:public base1,public base2{
protected:
int l;
public:
derive(int x,int y,int z) :base1(x),base2(y){
l=z;
}
void show(){cout<<"m is "<<m<<endl<<"n is "<<n<<endl<<"l is "<<l<<endl;}
};
int main()
{
derive cl(1,2,3);
cl.show();
return 0;
}
测试结果:
base1 created
base2 created
m is 1
n is 2
l is 3
base2 deleted
base1 deleted
请按任意键继续. . .
本文通过一个C++示例展示了多重继承的基本用法。该示例创建了一个从两个基类派生的类,并演示了如何初始化基类成员变量及访问派生类的方法。
373

被折叠的 条评论
为什么被折叠?



