析构函数
yichen
posted @ 2014年3月08日 23:28
in Essay
, 394 阅读
1.析构函数的作用并不是删除对象,即不能收回对象本身所占用的静态内存空间(其是由系统释放),而是在系统删除对象之前完成一些工作,如回收在运行过程中动态申请的内存空间。Ex:在用new创建对象,可以在析构函数中用delete进行删除。
2.析构函数不能重载,一个类中只能定义一个析构函数。
3.static局部对象在函数调用结束时对象并不释放,因此不调用析构函数,只在main函数或调用exit函数结束程序时才调用static局部对象的析构函数。如果是全局对象,则调用该全局对象的析构函数。
4.如果用new运算符动态创建一个对象,当用delete释放该对象时,先调用该对象的析构函数。
5.析构函数是可以被对象调用的,而构造函数是不可以被对象调用的,构造函数只能被系统调用。
1