码迷,mamicode.com
首页 > 编程语言 > 详细

C++常问的Vector,map内存释放

时间:2021-06-06 19:46:16      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:申请   vector   强制   增加   clu   机制   namespace   cto   交换   


#include <iostream>
#include<string>
#include <vector>
#include <map>
using namespace std;

int main()
{
vector<int> bgX{5, 10};
//方法1
bgX.erase(bgX.begin(), bgX.end());
bgX.clear();
bgX.shrink_to_fit();//c++ 11后增加的,具有异常回滚机制,比较符合鲁棒性

//方法2
vector<int>().swap(bgX);//强制空交换,达到彻底回收内存效果,简单粗暴,如果内存是使用指针申请内存的,注意先delete等释放操作

map<string, string>bgY{ {"x","y"},{"a","b"} };
//方法1
map<string, string>().swap(bgY);
return 0;
}

C++常问的Vector,map内存释放

标签:申请   vector   强制   增加   clu   机制   namespace   cto   交换   

原文地址:https://www.cnblogs.com/archer-mowei/p/14855794.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!