STL向量释放

Bob*_*Bob 2 c++ stl vector

给定vector指针的STL ,每个元素必须在销毁vector自身之前被释放.是否有任何技术含义阻止STL库自动执行此操作?

谢谢

tem*_*def 5

STL没有为你做的原因是它无法知道它是否应该.你可能有一个指向数组的指针向量(在这种情况下它需要做delete[]),指向常规对象的指针(在这种情况下它需要做delete),或者可能有一些自定义分配器的内存.这些指针也可以与其他一些对象共享,在这种情况下删除它们会导致其他对象指向垃圾数据,从而导致未定义的行为.那些指针也可以是堆栈分配的内存,在这种情况下不需要重新分配.