77问答网
所有问题
c++析构函数可以申明为虚函数吗
如题所述
举报该问题
推荐答案 2017-10-17
可以,尤其在多态中,如果动态创建子类的时候虚析够可以动态回收子类的对象
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/qppGI3WGvIGqpqv8Nq.html
其他回答
第1个回答 2017-10-17
当然不可以。。。
相似回答
C++
中为什么将
析构函数
生命
为虚函数
?尤其是在继承机制中
答:
因为子类的成员需要先于父类被摧毁.
虚函数能够
确保在子类
析构函数
调用前父类析构函数不会被意外调用.
析构函数
为什么
是虚函数
?
答:
析构函数可以为虚函数,也可以不为虚函数
。(更多的时候不为虚函数)。设计析构函数为虚函数,主要是考虑到继承。析构函数(destructor) 与构造函数相反,当对象结束其生命周期,如对象所在的函数已调用完毕时,系统自动执行析构函数。析构函数往往用来做“清理善后” 的工作(例如在建立对象时用new开辟了...
构造、
析构函数
可否为virtual
答:
构造函数不能声明为虚函数
,析构函数可以声明为虚函数,而且有时是必须声明为虚函数。不建议在构造函数和析构函数里面调用虚函数。构造函数不能声明为虚函数的原因是:解释一:所谓虚函数就是多态情况下只执行一个。而从继承的概念来讲,总是要先构造父类对象,然后才能是子类对象。如果构造函数设为虚函...
C++
中为什么基类
析构函数
一般要
声明为虚函数
答:
类析构函数要声明为虚函数
这样派生类调用析构函数才能层层回调,释放资源。这也是虚函数的作用--提供回调的指针。
在
C++
中,能否声明虚构函数?为什么?
能否声明虚析构函数
?为什么_百度知...
答:
原因如下:在
C++
-中不
能声明虚构
造函数,多态是不同的对象对同一消息有不同的行为特性,
虚函数
作为运行过程中多态的基础,主要是针对对象的,面构造函数是在对盘产生之前运行的,因此虚构造函数是没有童义的。在C++中
可以声明
虚
析构函数
,析构函数的功能是在该类对象消亡之前进行一些必要的清理工作,如...
什么函数不
能声明为虚函数
?
答:
inline, static, constructor ,template 函数都不能
为虚函数
,而
析构函数可以
。为什么呢:inline: 编译器替换; 而虚函数是为了解决运行期间绑定。static:class 成员; 编译期间就给class了。constructor: 构造函数表示要生成一个class的object;假设是virtual的,那就说不知道这个实例化derived还是based...
C++构
造,
析构函数可以是虚函数吗
,是否可以被继承?
答:
构造函数不
能为虚函数
,
析构函数
则可以,在
C++
中函数没有继承一说,继承指的是类继承,派生类的构造函数执行时需先构造基类的构造函数,而析构函数的执行顺序则刚好相反。
大家正在搜
构造函数和析构函数都可以是虚函数
析构函数可以声明为虚函数
析构函数可以是虚函数
基类析构函数可以是非虚函数
为什么基类的析构函数是虚函数
为什么析构函数要定义成虚函数
构造函数为什么不能为虚函数
析构函数纯虚函数
构造函数和析构函数