析构函数中释放之前动态分配的内存,举例讲解
时间: 2023-06-08 11:07:48 浏览: 103
C语言 动态内存分配的详解及实例
当我们使用动态分配内存时,需要手动释放这些内存,否则会导致内存泄漏。我们可以使用析构函数来释放动态分配的内存。
举一个例子,假设我们有一个名为MyClass的类,它有一个成员变量指针ptr,我们在构造函数中动态分配了一块内存给ptr,那么在析构函数中我们应该释放ptr指向的内存。
具体实现如下:
```c++
class MyClass {
public:
MyClass() {
ptr = new int[10];
}
~MyClass() {
delete[] ptr;
}
private:
int* ptr;
};
```
在上面的代码中,构造函数中我们使用new运算符为ptr动态分配了一块内存,然后在析构函数中使用delete[]运算符释放了ptr指向的内存。这样做可以保证我们的程序不会出现内存泄漏问题。
阅读全文