1,class members以它们在class内的声明次序来初始化,和它们在member initialization list中出现的次序完全无关.
2,这么做的原因:
对象数据成员的析构总是以和其构造相反的次序被调用,如果按照初始化列表的次序构造,那么编译器必须跟踪每个对象内members初始化的次序,这将带来昂贵的成本.
2,这么做的原因:
对象数据成员的析构总是以和其构造相反的次序被调用,如果按照初始化列表的次序构造,那么编译器必须跟踪每个对象内members初始化的次序,这将带来昂贵的成本.