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

C++ 析构函数为什么一般写成虚函数?

中金所技术公司后端开发风险判断技术原理C++

考察说明

考察C++多态与内存安全的理解,尤其是基类指针删除派生类对象时的行为

回答思路

  1. 说明虚析构函数能确保通过基类指针删除派生类对象时调用正确的析构链
  2. 指出非虚析构函数可能导致派生类成员资源泄漏或未定义行为
  3. 提及虚函数表指针的额外开销及何时无需虚析构函数
本题已收录答题指导

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

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