课程
/后端开发
/C++
/C++远征之封装篇(下)
有的delete p 和p=null 写在mian 里,有的写在析构函数里。怎么理解啥区分
2020-09-20
源自:C++远征之封装篇(下) 4-2
正在回答
写在main里面的是当前使用的对象的指针。
写在析构函数的都是是指对象中的成员对象指针。
所以在哪里使用对应的则在哪里进行资源回收。
例如:
class Student{
public:
~Student(){
//如果调用了析构函数,说明对象将要被回收,同时回收成员对象,防止内存溢出
delete stu1;
stu1= NULL;
}
private:
Student *stu1;
int main(){
Student *stu = new Student; //释放内存 delete stu; stu = NULL:
return 0;
举报
封装--面向对象三大特征之一,通过案例让C++所学知识融会贯通