课程
/后端开发
/C++
/C++远征之封装篇(上)
如果我们没有定义析构函数,系统会自动定义,那为什么我们要定义析构函数,直接让系统定义不就好了吗
2018-11-23
源自:C++远征之封装篇(上) 6-12
正在回答
系统可以释放对象,但不能释放对象引用的东西。
作者强调过,用了new一定要用delete。
视频末尾不是有一个示例吗。
#include<iostream> using namespace std; class student { public: student(){name=new char[20];} char *name; }; int main() { student stu; //如果不定义析构我要多加这句 delete [] stu.name; //如果定义了可以直接完事 return 0; }
举报
封装--面向对象的基石,本教程力求帮助小伙伴们即学即会