zoukankan      html  css  js  c++  java
  • C++ 类的继承和派生

     继承的优点:减少代码的冗余 提高代码的重用性

    派生类定义格式:
       Class 派生类名 :  继承方式 基类名{
             //派生类新增的数据成员和成员函数
       };
       class 子类: 继承方式  父类名{
           //子类新增的数据成员和成员函数
       };

    继承方式分类:

    public : 公有继承 (重要)
    private : 私有继承
    protected : 保护继承

    注意:

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

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

    继承中构造和析构的顺序

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

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

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

  • 相关阅读:
    ie6动态创建iframe无法显示内容的bug
    时间字符串解析
    自定义时间格式转换代码
    MySql存储过程异常处理示例
    解析数字签名的Substring结构
    自动输出类的字段及值
    深复制与浅复制的实现
    ie版本过低提示升级ie的示例
    Web安全攻防TCP/IP安全篇
    不同网段相互通信实验
  • 原文地址:https://www.cnblogs.com/loliconinvincible/p/12562780.html
Copyright © 2011-2022 走看看