必要性(作用):释放指针,释放资源
例如:
class Student{
public:
Student(){m_name=new char[20];} //即在堆上定义----故在释放对象时必须要释放掉内存
private:
char *m_name;
};
故需要添加析构函数: //销毁时自动调用,没有则由系统默认生成
//没有返回值,也没有参数,从而不可重载
~Student(){delete m_name;m_name=NULL;}
Posted dart2100
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了析构函数相关的知识,希望对你有一定的参考价值。
必要性(作用):释放指针,释放资源
例如:
class Student{
public:
Student(){m_name=new char[20];} //即在堆上定义----故在释放对象时必须要释放掉内存
private:
char *m_name;
};
故需要添加析构函数: //销毁时自动调用,没有则由系统默认生成
//没有返回值,也没有参数,从而不可重载
~Student(){delete m_name;m_name=NULL;}
以上是关于析构函数的主要内容,如果未能解决你的问题,请参考以下文章