我知道std::vectors在调用vector.clear()时不会“释放”内存,但我该如何做到呢?我希望一旦我清空它,它能释放所有资源,但又不想销毁它。
目前的情况是这样的。我有一个叫做OGLSHAPE的类,我将它们推入一个向量中。我希望一旦我执行shapevec.clear(),我能够获得所有的内存回收,但实际上只回收了其中的3/4。我不确定这是否是一个内存泄漏,所以我想要释放所有的资源以确保它不是一个泄漏。谢谢。
目前的情况是这样的。我有一个叫做OGLSHAPE的类,我将它们推入一个向量中。我希望一旦我执行shapevec.clear(),我能够获得所有的内存回收,但实际上只回收了其中的3/4。我不确定这是否是一个内存泄漏,所以我想要释放所有的资源以确保它不是一个泄漏。谢谢。
tmp
,还是这只是个风格和个人偏好的问题? - sbistd::vector<T>().swap(v)
。 - sbi