zoukankan      html  css  js  c++  java
  • 派生类的构造函数

    • 派生类对象包含基类对象
    • 执行派生类构造函数之前,先执行基类的构造函数
    • 派生类交代基类初始化,具体形式:

    构造函数名(形参表):基类名(基类构造函数实参表

    {

    }

    析构函数先调用派生类的构造函数,再调用基类的析构函数。

    创建派生类的对象时,执行派生类的构造函数之前:

    • 调用基类的构造函数------初始化派生类对象中从基类继承的成员
    • 调用成员对象类的构造函数------初始化派生类对象中的成员对象

    执行完派生类的析构函数后:

    • 调用成员对象类的析构函数
    • 调用基类的析构函数

    析构函数的调用顺序和构造函数的调用顺序相反。

    调用基类构造函数的两种方式

    • 显示方式
    • 隐式方式

    显示方式调用时,基类的构造函数是带有参数的,或者我们需要对派生类中的成员变量进行初始化。如果基类的构造函数重载,则会根据参数表自动调用相应的构造函数。

     

    如果在基类和子对象类型的声明中都没有定义带参数的构造函数,而且不需要对派生类自己的数据成员初始化,那么系统会为派生类创建一个默认的构造函数,而这个默认的构造函数会调用基类的构造函数,这样就实现了隐式调用基类构造函数。

     参考链接:

    https://www.coursera.org/learn/cpp-chengxu-sheji

  • 相关阅读:
    oracle中delete、truncate、drop的区别
    js获取当前日期时间
    Linux 命令大全
    oracle sql语言模糊查询
    ibatis<iterate>标签
    ibatis中使用like模糊查询
    编辑距离12 · Edit Distance12
    分割回文串 II · Palindrome Partitioning II
    单词拆分 I · Word Break
    300最长上升子序列 · Longest Increasing Subsequence
  • 原文地址:https://www.cnblogs.com/helloforworld/p/5655279.html
Copyright © 2011-2022 走看看