动态构造与析构对象数组C++入门课件

动态创建对象数组的 C++写法,newdelete怎么配合用,多新手一开始都容易踩坑。delete []p少了中括号,就只删掉第一个对象,其他的还在那儿等你手动清理呢,内存泄漏就是这么来的。课件里讲得挺清楚,例子也比较实用,适合刚接触对象数组的同学,理解构造函数和析构函数的自动调用方式。

构造函数析构函数是对象生命周期的关键,尤其是数组里多个对象一起管理的时候。像pa1 = new A[3]这种写法,系统会自动给每个对象调用构造函数。但如果你后面写的是delete pa1而不是delete []pa1,那只有第一个 A 对象的析构函数被调了,其他两个就悬在那儿了。

嗯,如果你用的是自定义资源管理类,比如里面有newmalloc的东西,那更得注意释放方式。否则该释放的没释放,不该释放的反而释放了,容易出 bug。建议养成习惯,数组用delete [],单个对象用delete,别混用。

如果你还不太熟构造和析构的执行顺序,推荐顺带看下C++继承:构造与析构的那些事儿,里面对父类子类调用顺序讲得蛮清楚的。理解透了,写类时心里更有数。

还有个链接也挺实用的,构造函数和析构函数,主要讲基础部分,适合跟这份课件搭配着一起看,学习效率高一点。

如果你正在写复杂类、对象数组比较多,又怕内存出问题,那这课件真的挺值得一看。搞懂它,起码你知道哪里容易出错,怎么用才稳当。

ppt 文件大小:2.77MB