C++析构函数

析构函数(Destructor)是C++类的一种特殊成员函数,它在对象的生命周期结束时自动调用,用于释放对象占用的资源(例如内存、文件句柄等)。析构函数的名称与类名相同,但前面有一个波浪号(~),且没有返回类型和参数。

1. 析构函数的定义

析构函数在类中定义如下:

class MyClass {
   
public:
    // 构造函数
    MyClass() {
   
        // 初始化代码
    }
    
    // 析构函数
    ~MyClass() {
   
        // 清理代码
    }
};

2. 析构函数的作用

析构函数通常用于执行以下操作:

  • 释放动态分配的内存。
  • 关闭文件或网络连接。
  • 释放其他系统资源。

3. 析构函数的自动调用

  • 析构函数在以下情况下自动调用:
  • 对象的作用域结束时。
  • 对象被删除时(通过delete操作符)。

示例代码:

#include 

class MyClass {
   
public:
    int* data;

    // 构造函数
    MyClass(int size) {
   
        data = new int[size]; // 动态分配内存
        std::cout << "Constructor: Memory allocated" << std::endl;
    }

    // 析构函数
    ~MyClass() {
   
        delete[] data; // 释放动态分配的内存
 

你可能感兴趣的:(C++基础,c++,开发语言)