解除分配是否意味着销毁?

3
更具体地说,在C++中,std::allocator_traits<T>::deallocate是否意味着std::allocator_traits<T>::destroy
1个回答

4
不,你必须记得自己调用destroy()。分配器不知道哪些对象已经被构建了,哪些只是被分配了内存。
例如,在vector中,对象0到v.capacity()-1已经被分配内存,但只有对象0到v.size()-1被构建了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接