按照c++规则,在定义派生类对象时,先调用基类构造函数初始化基类成员,再初始化派生类构造函数。对于析构函数,规则恢复。
我想知道为什么要遵守这条规则。为什么要先基类构造函数,再派生类构造函数?这样做有什么理由吗?或者仅仅因为它是 c++ 的定义。
谢谢,
最佳答案
因为派生类的成员可能依赖于基类的成员,所以必须先初始化基类的成员。
你不能反驳。
关于c++ - 为什么先调用基类构造函数再调用派生类构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14837094/