1. 派生类定义格式:
  2. Class 派生类名 : 继承方式 基类名{
  3. //派生类新增的数据成员和成员函数
  4. };
  5. class 子类: 继承方式 父类名{
  6. //子类新增的数据成员和成员函数
  7. };
public : 公有继承 (重要)
private : 私有继承
protected : 保护继承

子类继承父类,子类拥有父类中全部成员变量和成员方法(除了构造和析构之外的成员方法),但是在子类中,继承的成员并不一定能直接访问,不同的继承方式会导致不同的访问权限。
(public 继承 父类中的私有数据 在子类 不可见 其他保持原样)
(保护继承 父类的私有数据 在子类中 不可见 其他数据 都变保护)
(私有继承 父类中的私有数据在子类中 不可见 其他变成私有)

 

 不管啥继承方式:父类中的私有数据在 子类中不可见

  1. 1 class Base
  2. 2 {
  3. 3 public:
  4. 4 Base()
  5. 5 {
  6. 6 cout<<"父类的无参构造函数"<<endl;
  7. 7 }
  8. 8 ~Base()
  9. 9 {
  10. 10 cout<<"父类中的析构函数"<<endl;
  11. 11 }
  12. 12 };
  13. 13 class Son:public Base
  14. 14 {
  15. 15 public:
  16. 16 Son()
  17. 17 {
  18. 18 cout<<"子类的无参构造"<<endl;
  19. 19 }
  20. 20 ~Son()
  21. 21 {
  22. 22 cout<<"子类中的析构函数"<<endl;
  23. 23 }
  24. 24 };
  25. 25 void test01()
  26. 26 {
  27. 27 Son ob1;
  28. 28 }

总结:
构造顺序: 父类(基类)构造 ——> 子类(派生类)构造
析构顺序:子类(派生类)析构——> 父类 (基类) 析构

 

 继承主要掌握那张坐标表,对于这块知识内容就没有多大问题啦..

版权声明:本文为loliconinvincible原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/loliconinvincible/p/12562780.html