C++类中构造函数初始化列表

参考文章:https://blog.csdn.net/weicao1990/article/details/81536022

《C++ Primer》中提到在以下三种情况下需要使用构造函数初始化列表:

   1. 需要初始化的类的成员变量是对象的情况; 

   2. 需要初始化的类的成员变量由const修饰的或初始化的类的引用成员变量;

   3. 子类初始化父类的成员;

对于以上3点,可将初始的内容分为变量和对象两种。

i、对于变量,可以认为是简单的赋值操作,比如A:conA(int _a):a(_a),其中a是A类中的const或&引用变量,也可以为类的指针对象,可以理解为a = _a。

ii、对于对象,如果在目前的类中声明了一个类的对象(包括类的指针对象),那么需要调用该类的初始化函数完成初始化操作。比如:A:conA(B* p):C_Object(p),其中C_Object是A类对象继承的类。

你可能感兴趣的:(C++,Learning)