- 为内置型对象进行手工初始化,因为C++不保证初始化它们。
- 构造函数最好使用成员初值列(member initialization list),而不要在构造函数本体内(定义内)使用赋值操作(assiginment)。初值列列出的成员变量,其排列次序应该和它们在class中的声明次序相同。
- 为免除跨编译单元之初始化次序“”问题,请以local static对象替换non-local static对象。
1,一个classes拥有多个构造函数,成员初值列不相同时,合理地在初值列中遗漏那些“赋值表现像初始化一样好”的成员变量,改用他们的赋值操作,并将这些赋值操作移往某个函数(如Init,通常是private)。