三、一个好的原则是,能使用初始化列表的时候尽量使用初始化列表
因为初始化列表有时能少调用一次默认构造函数
四、必须要用初始化列表的时候
1.常量成员,因为常量只能初始化不能赋值,所以必须放在初始化列表里面...没有默认构造函数的类类型,因为使用初始化列表可以不必调用默认构造函数来初始化,而是直接调用拷贝构造函数初始化
五 、成员变量是按照在类中声明的顺序被初始化的而不是在初始化列表中的顺序
struct foo...一个好的习惯是,按照成员定义的顺序进行初始化。
六、含有参数的继承类的初始化
代码1如下:
1 // 集成类的初始化实验.cpp : 定义控制台应用程序的入口点。...从执行结果上看,好像是将34行中B b=B(1,2,3,'a');的1,2,3,'a'依次赋值给26行中B(int a2,int b2,char c2,int d2):A(a2,b2,c2)的a2,b2...,c2,d2,然后在将a2,b2,c2,依次赋值给13行中A(int a1,int b1,char c1) 的a1,b1,c1
将代码改变一下:
1 // 集成类的初始化实验.cpp : 定义控制台应用程序的入口点