构造函数初始化时必须采用初始化列表一共有三种情况,
1.需要初始化的数据成员是对象(继承时调用基类构造函数)
(1) 如果非继承关系,类B中包含类A对象,类A无默认构造函数时,此时类B需要对类对象进行初始化列表初始化, 当然,如果类A有默认构造函数,类B不需要对类对象进行初始化
(2) 如果有继承关系,父类中没有默认构造函数,那么子类在初始化列表当中,一定要对父类的构造函数进行初始化
2.需要初始化const修饰的类成员,static const都不行
3.需要初始化引用成员数据
构造函数初始化时必须采用初始化列表一共有三种情况,
1.需要初始化的数据成员是对象(继承时调用基类构造函数)
(1) 如果非继承关系,类B中包含类A对象,类A无默认构造函数时,此时类B需要对类对象进行初始化列表初始化, 当然,如果类A有默认构造函数,类B不需要对类对象进行初始化
(2) 如果有继承关系,父类中没有默认构造函数,那么子类在初始化列表当中,一定要对父类的构造函数进行初始化
2.需要初始化const修饰的类成员,static const都不行
3.需要初始化引用成员数据