C++中构造函数为什么不能为虚函数
2015-01-16 22:00
295 查看
1.虚函数的执行依赖于虚函数表,而虚函数表的初始化是在构造函数中进行的,若构造函数为虚函数,此时虚函数表还没有初始化成功,这就导致构造函数无法执行,形成循环依赖。
2.生成一个对象需要这个对应的类型,而虚函数是在运行时确认类型的。
2.生成一个对象需要这个对应的类型,而虚函数是在运行时确认类型的。
相关文章推荐
- 【c++】构造函数为什么不能是虚函数
- C++中构造函数为什么不能是虚函数
- C++之构造函数为什么不能为虚函数
- [C++基础]047_构造函数为什么不能是虚函数
- C++的构造函数为什么不能是虚函数
- 构造函数为什么不能是虚函数 ( 转载自C/C++程序员之家)
- 构造函数为什么不能是虚函数 ( 转载自C/C++程序员之家)
- 为什么C++的构造函数不能是虚函数
- C++中为什么构造函数不能是虚函数,析构函数是虚函数
- C++里的构造函数为什么不能为虚函数
- C++构造函数为什么不能是虚函数
- c++的构造函数为什么不能是虚函数,而基类的析构函数必须是虚函数?
- 为什么C++不能有虚构造函数,却可以有虚析构函数
- 为什么构造函数不能声明为虚函数,析构函数可以
- 为什么构造函数不能为虚函数
- 构造函数为什么不能是虚函数
- 构造函数为什么不能为虚函数
- 虚函数的作用,为什么构造函数不能是虚函数——金山面试
- 为什么构造函数不能为虚函数
- 为什么C++不能有虚构造函数,却可以有虚析构函数