在上面的文章中我们讲到了构造函数以及其使用方法,在这一章中,我们来看看析构函数在C++中是如何运作的
之前我们在讲构造函数的时候,我们提到了它的定义
构造函数实际上就是当对象创建的时候自动调用的一个名字与类名相同的成员函数
那么很简单,析构函数的定义如下
析构函数实际上就是当对象销毁的时候自动调用的一个名字与类名相同的成员函数
看下面例子
#include
下面是运行结果
构造函数的创建是直接在类中创建一个名字与类名一样的函数即可,而解构函数的创建即是在构造函数的基础上添加一个“~“字符,比如Rectangle类中的解构函数就应该是~Rectangle()。
析构函数最为常见的一个用法就是在对象被销毁以后执行程序结束步骤,比如在类对象动态分配内存并完成操作以后对所动态分配的内存进行释放。看下面这个例子
ContactInfo.h
// Specification file for the Contact class.
主程序
// This program demonstrates a class with a destructor.
你也许已经注意到了,析构函数和构造函数一样并没有返回值,但是不同的是,解构函数不能传入参数,也就是所它没有任何返回值。