在C++11中引入了许多好用的STL模版,如vector
但调用clear()
方法后内存并不会随即释放
需配合shrink_to_fit()
完成释放
举例
#include <iostream>
#include <vector>
int main()
{
std::vector<int> vec;
vec.push_back(1);
std::cout<<vec.capacity()<<std::endl;
vec.clear();
std::cout<<vec.capacity()<<std::endl;
vec.shrink_to_fit();
std::cout<<vec.capacity()<<std::endl;
return 0;
}
// output: 1 1 0