为什么有虚析构函数,没有虚构造函数啊
2011-01-19 13:47
363 查看
destructor & constructor 如果是虚析构函数, 调用时,会根据对象类型动态决定调用的函数。 如果,~Base()是虚函数, a.~Base()时,对象已确定,可以调用相应的析构函数。 对于构造函数,对象类型还没有决定,无法确定要调用的函数。 所以,虚构造函数是没有意义的。 比如,Base a = new Base(); 如果Base()是虚函数,它无法确定要调那个函数。
相关文章推荐
- 构造函数析构函数为什么没有返回值?
- 构造函数析构函数为什么没有返回值?
- 构造函数析构函数为什么没有返回值?
- 构造函数析构函数为什么没有返回值?
- C++中的构造函数为什么没有返回值
- 为什么构造函数没有返回值?
- 构造函数和析构函数为何没有返回值
- C++中的构造函数为什么没有返回值
- 为什么构造函数不能为虚函数,而析构函数可以为虚函数
- 为什么构造函数不能虚而析构函数可以虚,以及在什么情况下来使用析构函数
- 为什么不能把构造函数设为虚函数,却可以把析构函数设为虚函数
- 构造函数、析构函数可以抛出异常吗?为什么?(一道百度面试题)
- 构造函数为什么不能是虚的,而析构函数为什么某些情况下必须是虚的
- 为什么构造函数不能声明为虚函数,析构函数可以
- 为什么构造函数不可以被声明为虚函数而析构函数有时候必须声明为虚函数
- C++中为什么构造函数不能是虚函数,析构函数是虚函数
- 为什么构造函数不能声明为虚函数,析构函数可以
- 为什么构造函数不能是虚函数而析构函数可以
- 为什么C++不能有虚构造函数,却可以有虚析构函数
- 为什么构造函数不能为虚函数,而析构函数可以为虚函数