后端岗位面试题更新 2026-08-05

如果在父类析构函数未声明为 virtual,而子类对象通过父类指针被删除时,会发生什么问题?

万得信息后端开发互联网/IT风险判断技术原理C++

考察说明

考察 C++ 虚析构函数的机制与资源泄漏风险

回答思路

  1. 指出未声明 virtual 时,通过基类指针删除派生类对象的行为是未定义的
  2. 说明典型结果:只调用基类析构函数,子类析构函数不被调用,可能导致资源泄漏
  3. 解释正确做法是声明基类析构函数为 virtual,并说明为什么通常建议至少将基类析构函数设为虚函数
本题已收录答题指导

本题附完整参考答案与评分标准

登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。