class Student
{
private:
char *pName;
public:
Student()
{
pName=new char(20);
}
~Student()
{
delete[] pName;
}
}
上面类中 ~Student() 为析构函数,
如果析构函数中没有:
delete[] pName;
在类的生命周期结束时,在他的构造函数中分配的这块堆内存就会丢失,造成内存泄露.
class Student
{
private:
char *pName;
public:
Student()
{
pName=new char(20);
}
~Student()
{
delete[] pName;
}
}
上面类中 ~Student() 为析构函数,
如果析构函数中没有:
delete[] pName;
在类的生命周期结束时,在他的构造函数中分配的这块堆内存就会丢失,造成内存泄露.