【C++11对象构造的改良】
C++03中一个构造函数无法构造另一个构造函数,因为A()实际上意味着生成一个临时对象,存在语音混淆。详情请看参考2。
C++11中允许直接在初始化列表中调用其它的构造函数:
另外,C++11允许通过using命令直接把基类的构造函数转换为本类的构造函数:
最后,C++11支持直接对类成员用=与赋初始值。
参考:
1、http://zh.wikipedia.org/wiki/C++0x#.E7.89.A9.E4.BB.B6.E5.BB.BA.E6.A7.8B.E7.9A.84.E6.94.B9.E8.89.AF