含有对象成员的派生类构造函数写法

派生类构造函数的任务应该包括3个部分:

  • 对基类数据成员初始化;
  • 对子对象数据成员初始化;
  • 对派生类数据成员初始化。


程序中派生类构造函数首部如下:
    Student1(int n, string nam,int n1, string nam1,int a, string ad):
        Student(n,nam),monitor(n1,nam1)
在上面的构造函数中有6个形参,前两个作为基类构造函数的参数,第3、第4个作为子对象构造函数的参数,第5、第6个是用作派生类数据成员初始化的。

归纳起来,定义派生类构造函数的一般形式为:

//注意:基类写的是构造函数名即类名,而子对象写的是子对象的名不是子对象类的名字


    派生类构造函数名(总参数表列): 基类构造函数名(参数表列), 子对象名(参数表列)
    {
        派生类中新增数成员据成员初始化语句
    }

执行派生类构造函数的顺序是:

  1. 调用基类构造函数,对基类数据成员初始化;
  2. 调用子对象构造函数,对子对象数据成员初始化;
  3. 再执行派生类构造函数本身,对派生类数据成员初始化。

猜你喜欢

转载自blog.csdn.net/qq_39736982/article/details/84287206