不delete析构函数会执行吗???
类中的析构函数是用来完成类的清理工作的,如果在类中new了对象,那么在类退出生存域的时候,要delete这些对象。不delete析构函数会执行吗??? 问题点数:0、回复次数:6Top
1 楼sinkinglife(沉沦)回复于 2005-06-02 22:37:22 得分 0
如果你没有在构造函数或生命期中获得资源,你可以不定义析构函数。Top
2 楼krh2001(边城浪子)回复于 2005-06-02 22:52:47 得分 0
显式调用也有的,不过这样不会释放对象占用的内存, 甩以一般不会主动调用析构函数.除非你有自己的内管理方式(如:内存池),或者用在再生对象上来回收资源Top
3 楼uglystone(丑石)回复于 2005-06-03 00:21:57 得分 0
auto_ptr类
Top
4 楼ukyo1(**)回复于 2005-06-03 00:28:51 得分 0
你不delete是不可能退出生存区的,顶多指向那个实例的指针退出生存区。Top
5 楼hiiiiiijiang(等待毕业)回复于 2005-06-03 07:18:58 得分 0
用了new,就必须用delete,因为这个是原生指针,除非你用auto_ptrTop
6 楼xqk(夏乾坤)回复于 2005-06-03 08:26:57 得分 0
用了new,就必须用delete,因为是你自己在堆中分配的内存,这块内存的指针由你自己来控制,程序是不会知道你的这个指针的,也不会自动帮你释放的,是任何时候,构造函数中也不会除外
除非程序退出,会将所有程序分配的4GB虚拟保护地址内容全部释放Top




