构造函数为什么不能是虚函数

来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/23 08:36:36
构造函数为什么不能是虚函数构造函数为什么不能是虚函数构造函数为什么不能是虚函数1构造一个对象的时候,必须知道对象的实际类型,而虚函数行为是在运行期间确定实际类型的.而在构造一个对象时,由于对象还未构造

构造函数为什么不能是虚函数
构造函数为什么不能是虚函数

构造函数为什么不能是虚函数
1 构造一个对象的时候,必须知道对象的实际类型,而虚函数行为是在运行期间确定实际类型的.而在构造一个对象时,由于对象还未构造成功.编译器无法知道对象的实际类型,是该类本身,还是该类的一个派生类,或是更深层次的派生类.无法确定.2 虚函数的执行依赖于虚函数表.而虚函数表在构造函数中进行初始化工作,即初始化vptr,让他指向正确的虚函数表.而在构造对象期间,虚函数表还没有被初始化,将无法进行.