1、何时调用析构函数
(1)变量在超出作用域时自动撤销。
(2)动态分配的对象只有在指向该对象的指针被删除时才撤销。如果没有delete,会导致内存泄漏,而且对象内部使用的任何资源也不会释放。
(3)当对象的引用或指针超出作用域时,不会运行析构函数。只有删除指向动态分配对象的指针或实际对象超出作用域时,才会运行析构函数。
2、编写析构函数
class MyClass{
pubic:
~MyClass();
};
本文介绍了析构函数的调用时机,包括变量超出作用域时自动撤销的情况,以及动态分配对象在指针被删除时的撤销过程。同时给出了一个简单的析构函数编写示例。
1、何时调用析构函数
(1)变量在超出作用域时自动撤销。
(2)动态分配的对象只有在指向该对象的指针被删除时才撤销。如果没有delete,会导致内存泄漏,而且对象内部使用的任何资源也不会释放。
(3)当对象的引用或指针超出作用域时,不会运行析构函数。只有删除指向动态分配对象的指针或实际对象超出作用域时,才会运行析构函数。
2、编写析构函数
class MyClass{
pubic:
~MyClass();
};
1193

被折叠的 条评论
为什么被折叠?