C++析构函数是一种特殊的函数,它会在对象被销毁时自动调用,用于释放对象所占用的资源。析构函数的名称与类名相同,但前面有一个波浪号(~),比如:class A {}; A的析构函数就是:~A()。
析构函数的用法
- 1.析构函数用于释放对象所占用的资源,比如:关闭文件、释放内存等。
- 2.析构函数可以定义为虚函数,用于实现多态,比如:基类的析构函数定义为虚函数,那么子类的析构函数也会被调用。
- 3.析构函数可以用于对象的拷贝构造,比如:当一个对象被拷贝构造时,析构函数会被自动调用,以释放拷贝构造的对象所占用的资源。
析构函数的使用
class A { public: A() { /* 构造函数 */ } ~A() { /* 析构函数 */ } }; int main() { A a; // 调用构造函数 return 0; // 调用析构函数 }
上面的代码中,在main函数中定义了一个A类的对象a,在定义时,构造函数A()会被调用,当函数返回时,析构函数~A()会被调用,以释放对象a所占用的资源。