问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

vector怎么清理内存

发布网友 发布时间:2022-04-26 15:00

我来回答

1个回答

热心网友 时间:2023-10-10 20:06

为了防止内存泄露,习惯于new的时候,顺手就写一个delete。
于是delete多了,想偷懒,顺手就写了一个宏,
#define DEL(p) { delete p; p = NULL; }
又遇到需要delete数组,就又写了一个宏
#define DELX(p) { delete[] p; p = NULL; }

自从开始用了STL,vector就成了最最常用的数据结构,
有阵子听说印度人用数组可以搞定一切数据结构,心*的实践了1、2年。
那阵子有些走火入魔,的确,数组可以搞定一切数据结构,尤其用STL::vector这个动态数组。
不过说是这么说,还是需要在逻辑简单和代码易懂之间找到一个平衡点,当然前提是实现功能。
1.该用map的还是得用map
2.n个vector描述同个数据,不如新建一个class包一下,再调用指针

于是我发现写代码的时候,有很多的时间都在敲怎么清除vector指针的内存。
每次都敲一遍又一遍的类似的无聊代码,于是懒人有懒办法,加入了一个template函数,分享
template< class T >
void ClearVector( vector< T* > &v )
{
int i;
int n = (int)v.size();
for( i = 0; i < n; i++ )
{
T* p = v[i];
DEL( p );
}
v.clear();
}
怎么用就不多说了。你懂的,应该的。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 怎样在c++ 中删除vector最后一个元素 如何正确释放Vector的内存 vector 清除问题 侯耀文的遗产为什么那么难分,都给儿女不就完了 如何删除容器vector里面的所有元素 侯瓒做什么工作的 使用STL vector的几种清空容器(删除)办法 五万的恩情两千万还!师傅去世了,郭德纲却依旧照顾她的家人,你怎么看? vector怎样清空 在侯耀文遗产案中,最大的受益者是谁? 侯瓒的介绍 如何清空vector数组 侯瓒是怎么评价郭德纲的? 候瓒才是遗产案最大的赢家,侯耀华疑似被利用,究竟是咋回事? 作为侯耀文的长女,侯瓒是怎么样评价郭德纲的? 侯耀华被冤枉14年,霸占弟弟遗产只是幌子,侯耀文前妻到底都干了啥?_百... 侯耀文39岁大女儿罕见露面,他的家人与德云社什么交情? 侯瓒的个人简介 侯耀文的女儿侯瓒是什么工作 侯瓒素颜气质出众,和郭德纲于谦合照显亲密,他们感情如何? 用memset可以清空vector吗? c++ 如何删除 vector中的第一个元素 VC/MFC vector 如何释放vector中的多余的内存 c++ vector clear() 方法的问题 C++中vector&lt;int&gt;a,b(n,0)什么意思 vector的clear会释放动态内存吗 java vector中clear()与removeAllElements(),arraylist的clear()与new arraylist()有何区别? VC vector clear() 的问题 除了放料猛煮,卤猪肝还有其它的完美做法吗? 猪肝能不能卤着吃 猪肝是贫血人的福音,一定要正确认识猪肝,如何做猪肝? 猪肝是炒着吃好还是做卤猪肝好? 微信被封号了,聊天记录还有吗? 学校德育部门生本教育 中学生自查自纠个人总结 求:写一份给学校里的网络部门要求写一份对部门的建议书应该怎么写 急需!!!谁那有通信行业的行风建设工作计划和工作总结? 水钰莱这三个字写什么字体好看? 有什么字体类似于咸莱字体,不带那种花花的特效的 上面字体黑边是怎么弄出莱的呀? 求大神指点