后端岗位面试题更新 2026-08-05
构造函数为什么不是虚函数?
优酷后端开发互联网/IT技术原理C++
考察说明
考察对C++虚函数机制、对象生命周期与构造过程的理解
回答思路
- 说明虚函数依赖虚表指针,而虚表指针在构造函数执行前尚未正确初始化
- 解释构造函数执行时对象类型仍处于构造中的基类阶段,虚调用不会分发到派生类
- 指出构造函数若为虚则无法确定对象创建的实际类型,虚构造在逻辑上无法实现
- 补充析构函数应为虚函数以正确释放派生类资源,与构造函数形成对比
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。