面试真题

C++ · 简单 · 腾讯

请问继承下的构造函数和析构函数执行顺序

简单 C++ 🎤 腾讯
参考答案
结论:继承体系中构造顺序为先基类后派生类,析构顺序相反。原理:对象创建时先构建基类子对象才能保证派生类使用基类成员,故从最顶层基类依次向下构造;销毁时派生类可能依赖基类,需先清理自身资源再交还基类,故析构逆序。多继承时基类按声明顺序构造、逆序析构;虚继承的虚基类优先构造。示例:class A{}; class B:public A{}; B b; 构造A->B,析构B->A。
题目整理自公开面经,答案由校招宝自研生成,仅供参考