返回信息流比如说我 vector<a> ap* =new vector<a>();
blablabla一堆操作;
然后不想要ap所指向的内容了了,需要delete ap么,看一本书上写的是不能delete,否则会二次析构vector对象,因为指向vector的指针会自动析构。但是我验证了一下,并没有报错,到底对于指向stl容器的堆内存,需要手动delete么?
这是一条镜像帖。来源:北邮人论坛 / cpp / #30013同步于 2009/10/16
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
STL模板的new-delete的一个问题
fox2003a
2009/10/16镜像同步3 回复
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
vector<ptr> ap;
这种才不用自动析构吧
vector<a> ap* =new vector<a>(); 这是定义了一个指向vector的指针,这个指针当然要主动释放
我也是这么认为滴,但是“程序员面试宝典”一书上说指向vector对象的指针在失效时也会自动析构其指向的对象,但是一想指向vector对象的指针又不是autoptr类似的指针,只是普通指针,个人认为是不能自动释放的,
【 在 ahomer 的大作中提到: 】
: vector<ptr> ap;
: 这种才不用自动析构吧
: vector<a> ap* =new vector<a>(); 这是定义了一个指向vector的指针,这个指针当然要主动释放
请在其他书找根据
程序员面试宝典 很多说法值得推敲
【 在 fox2003a 的大作中提到: 】
: 我也是这么认为滴,但是“程序员面试宝典”一书上说指向vector对象的指针在失效时也会自动析构其指向的对象,但是一想指向vector对象的指针又不是autoptr类似的指针,只是普通指针,个人认为是不能自动释放的,
[em21]