用下面的代码进行测试,发现vector 的swap 没有把内存释放掉,这是什么原因呢?
环境:centos 7. 4
#include <iostream>
#include <string>
#include <vector>
using namespace std;
void func()
{
vector<string> s;
int i = 5000000;
while(i--)
s.push_back(to_string(i));
vector<string>().swap(s);
}
int main()
{
func();
cout <<"done."<<endl;
while(1);
}