c++允许一个类继承多个类

    语法: class 子类名 : 继承类型 父类名 ,(用于分割) 继承类型 父类名…….

    多继承可能引发父类中有同名成员出现,需要加作用域区分

    c++实际开发中不建议用多继承

    1. #include<iostream>
    2. using namespace std;
    3. class Base1
    4. {
    5. public:
    6. Base1()
    7. {
    8. m_a=100;
    9. }
    10. int m_a;
    11. };
    12. class Base2
    13. {
    14. public:
    15. Base2()
    16. {
    17. int m_a=200;
    18. }
    19. int m_a;
    20. };
    21. //子类需要继承Base1和Base2。
    22. //语法: class 子类名 : 继承类型 父类名 ,(用于分割) 继承类型 父类名.....
    23. class son:public Base1,public Base2
    24. {
    25. public:
    26. son()
    27. {
    28. m_c=1;
    29. m_d=2;
    30. }
    31. int m_c;
    32. int m_d;
    33. };
    34. void show()
    35. {
    36. son p;
    37. cout<<"子类p占用的内存空间"<<sizeof(p)<<endl;
    38. cout<<"Base1 的值="<<p.Base1::m_a<<endl;
    39. cout<<"Bsea2 的值="<<p.Base2::m_a<<endl;
    40. }
    41. int main()
    42. {
    43. show();
    44. return 0;
    45. }