1,如果class含有const成员或引用reference,由于它们只能被初始化,而不可能被赋值.
因此必须使用初始化列表.
2,出于效率上的考虑:
对象的构造分两个阶段:
(1)data member初始化.
(2)执行constructor.
如果有一个string str成员.可能会被调用两次:
一次初始化阶段,dafault constructor,一次constructor阶段,调用assignment运算符.
3,注意:static class members绝不应该在一个class's constructor中被初始化.
static members在每一个程序执行时,只应该被初始化一次.
因此必须使用初始化列表.
2,出于效率上的考虑:
对象的构造分两个阶段:
(1)data member初始化.
(2)执行constructor.
如果有一个string str成员.可能会被调用两次:
一次初始化阶段,dafault constructor,一次constructor阶段,调用assignment运算符.
3,注意:static class members绝不应该在一个class's constructor中被初始化.
static members在每一个程序执行时,只应该被初始化一次.