首页 > 编程语言 > 详细

c++ 析构函数

时间:2020-10-08 18:23:29      阅读:25      评论:0      收藏:0      [点我收藏+]

为什么有的时候,析构函数必须是虚函数?

  将可能会被继承的父类的析构函数设置为虚函数,可以保证当我们new一个子类的时候,然后使用基类指针指向该子类对象,释放基类指针的时候,可以释放掉子类空间,防止内存泄漏。

  c++默认的析构函数不是虚函数是因为虚函数需要额外的虚函数表和虚表指针,占用额外的内存。而对于不会被继承的类来说,其析构函数如果是虚函数,就会浪费内存。因此c++默认的析构函数不是虚函数,而只有当做父类时,设置为虚函数。

c++ 析构函数

原文:https://www.cnblogs.com/gongyc/p/13781703.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!