1) 记录在成员初始化列表中的数据成员初始化操作会被放在构造函数的函数体内,并与成员的声明顺 序为顺序;
2) 如果一个成员并没有出现在成员初始化列表中,但它有一个默认构造函数,那么默认构造函数必须 被调用;
3) 如果class有虚表,那么它必须被设定初值;
4) 所有上一层的基类构造函数必须被调用;
5) 所有虚基类的构造函数必须被调用。