虚基类

1444阅读 0评论2011-09-13 blacksapper
分类:C/C++

  1. //虚基类用于在第二个类中访问和修改虚基类的public 中成员的值。
  2. #include <iostream>
  3. using namespace std;
  4. class B0{//定义基类B0
  5. public ://外部接口
  6.     B0(int n){nV=n;}
  7.     int nV;
  8.     void fun(){cout<<"Member of B0"<<endl;}
  9. };
  10. class B1: virtual public B0{//B0是虚基类,派生B1类
  11. public ://新增外部接口
  12.     B1(int a):B0(a){}
  13.     int nV1;
  14. };
  15. class B2:virtual public B0{//B0是虚基类,派生B1类
  16. public ://新增外部接口
  17.     B2(int a):B0(a){}
  18.     int nV2;
  19. };
  20. class D1:public B1,public B2{//派生类D1定义d
  21. public ://新增外部接口
  22.     D1(int a):B0(a),B1(a),B2(a){}
  23.     int nVd;
  24.     void fun(){cout<<"Member of D1"<<endl;}
  25. };
  26. int main(){
  27.     D1 d1(1);
  28.     d1.nV=2;
  29.     d1.fun();
  30. }
上一篇:C++的继承
下一篇:ubuntu下用eclipse开发c++