分配空间
对于全局对象,静态对象以及分配在栈区域内的对象,对它们的内存分配是在编译阶段就完成了,而对于分配在堆区域内的对象,它们的分配是在运行是动态进行的。
虚函数表指针赋值
在构造函数的最开始,在进初始化列表之前,编译器会插入代码用当前正在被构造的类的虚表地址给虚表指针赋值。
初始化
对类对象的初始化,实际上是对类对象内的所有数据成员进行初始化。C++已经为我们提供了对类对象进行初始化的能力,我们可以通过实现构造函数的初始化列表来实现。
初始化列表先于构造函数体内的代码执行
赋值
和类对象的初始化一样,类对象的赋值实际上是对类对象内的所有数据成员进行赋值。C++也已经为我们提供了这样的能力,我们可以通过构造函数的实现体(即构造函数中由"{}"包裹的部分)来实现。