Effective_STL 学习笔记(七) 当使用 new 得指针容器时,记得在销毁容器前 delete 那些指针

  STL 容器非常优秀。它们提供了前向和逆向遍历的迭代器(通过 begin、end、rbegin等);它们能告诉你所容纳的对象的类型(通过 value_type 和 typedef);在插入和删除中,它们负责任何需要的内存管理;它们报告容纳了多少对象和最多容纳的数量(分别通过 size 和 max_size);而且当容器自己被销毁时会自动销毁容纳的每个对象。

但是,当容器容纳的是指向通过 new 分配的对象的指针时,它们就错了,因为销毁对象时,指针的析构函数无操作,不会调用 delete

Tip: 从没有虚拟析构函数的类公有继承是一个大的C++禁忌

原文地址:https://www.cnblogs.com/kidycharon/p/10003427.html