析构函数

原创 2007年09月26日 11:28:00

一般情况下类的析构函数里面都是释放内存资源,而析构函数不被调用的话就会造成内存泄漏。

当构造函数中使用了new,那么析构函数则使用delete。

析构函数不带任何参数,不返回任何东西(译注:void也不行)。

基类的析构函数一般设计成虚函数 是为了当用一个基类的指针删除一个派生类的对象时,派生类的析构函数会被调用。

并不是要把所有类的析构函数都写成虚函数。因为当类里面有虚函数的时候,编译器会给类添加一个虚函数表,里面来存放虚函数指针,这样就会增加类的存储空间。所以,只有当一个类被用来作为基类的时候,才把析构函数写成虚函数。

相关文章推荐

C++的析构函数

  • 2014年03月30日 22:49
  • 1.13MB
  • 下载

纯虚析构函数必须给出定义

Effective C++ 条歀07:为多态基类声明virtual析构函数(Declare destructors virtual in polymorphic base classes) 纯虚函数...

析构函数应用

  • 2015年06月30日 09:05
  • 654B
  • 下载

构造、析构函数

  • 2012年07月21日 21:41
  • 27KB
  • 下载

为什么需要将继承层次中类的析构函数定义成virtual的?

如标题所示,如果该类没有父类也没有任何子类,把析构函数还定义成虚的,确实没多大必要吧。对象的构建和析构完全是一个入栈和出栈的过程,也就是说肯定会从父类构造到子类,也肯定会从子类析构到父类,这些都是毋容...
  • Augusdi
  • Augusdi
  • 2014年07月16日 16:36
  • 1090

虚析构函数示例

  • 2012年02月07日 11:26
  • 472B
  • 下载

深析C++析构函数

  • 2011年11月15日 18:36
  • 3KB
  • 下载

PHP析构函数与垃圾回收

析构函数:当某个对象成为垃圾或者当对象被显式销毁时执行。 GC (Garbage Collector) 在PHP中,没有任何变量指向这个对象时,这个对象就成为垃圾。PHP会将其在内存中销毁。这是...

C++ 析构函数 参考源代码

  • 2014年08月19日 10:33
  • 18KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:析构函数
举报原因:
原因补充:

(最多只允许输入30个字)