1.vector::clear和vector::erase的区别

转载 2018年04月17日 19:52:15

1、vector::clear()函数的作用是清空容器中的内容,但如果是指针对象的话,并不能清空其内容,必须要像以下方法一样才能达到清空指针对象的内容:

vector<int*> xx;
for(int it=0;it!=xx.size();++it)
{
	delete xx[it];
}
xx.clear();

但并不回收内存,但你可以通过swap()函数来巧妙的达到回收内存的效果:

xx.clear();
xx.swap(vector<int>());

2、vector::erase()用于清空容器中的内容以及释放内存,并返回指向删除元素的下一个元素的迭代器。

Create Your Own Visual Basic Add-Ins

Create Your Own Visual Basic Add-InsBy S.S. AhmedRating: 3.7 out of 5Rate this article docume...
  • sonicdater
  • sonicdater
  • 2002-03-09 18:00:00
  • 906

C++学习之路(vector::clear和vector::erase的区别)

vector::clear()函数的作用是清空容器中的内容,但并不回收内存,但你可以通过一下...
  • a18826408828
  • a18826408828
  • 2014-07-17 21:54:34
  • 7938

容器中clear()和erase()的区别

 1、vector::clear()函数的作用是清空容器中的内容,但如果是指针对象的话,并不能清空其内容,必须要像以下方法一样才能达到清空指针对象的内容: [cpp] view...
  • Sunshine_in_Moon
  • Sunshine_in_Moon
  • 2015-05-03 11:05:04
  • 3160

clear与erase的原理与区别

刚才把作业的B题做完。
  • Ran_lavender
  • Ran_lavender
  • 2014-05-10 13:11:12
  • 1015

C++9.3.7 容器删除元素--erase、clear、pop_front函数

简介看一下9.5节容器之间的区别—-list类似于链表,容易增删改,queue是两端增删改容易。,所以删除时,用到最多的容器时list1.删除第一个或最后一个元素—–pop_front 和pop_ba...
  • hlsdbd1990
  • hlsdbd1990
  • 2015-06-04 16:16:37
  • 3206

vector清空 ,防止内存泄露

转自:http://blog.csdn.net/metalkittie/article/details/3115750 注:使用过低三种方法,可行! vector int> vecInt;...
  • liujianfei526
  • liujianfei526
  • 2016-04-21 13:16:50
  • 1477

C++中Vector的erase()操作以及与remove的区别

vector v; v.pushback(0); v.pushback(1); v.pushback(1); v.pushback(0); 想要删除值为1的元素 错误代码  vecto...
  • zzuchengming
  • zzuchengming
  • 2016-03-15 13:05:47
  • 3652

C++ 顺序容器的操作(6) 删除元素 erase、clear、pop_back、pop_front

删除元素 1、c.erase(p); 2、c.erase(b,e);//删除从b到e的所有元素,包括b但不包括e 3、c.clear();//删除所有元素 4、c.pop_back() 5、...
  • sinat_24229853
  • sinat_24229853
  • 2015-02-15 17:36:54
  • 705

关于vector的erase删除操作的两种不同方法,在linux与visual studio的实现讨论

关于vector的erase删除操作的两种不同方法,在linux与visual studio的实现讨论1.前言:最近在做某一个题时,用到了vector的删除操作,利用的是erase()函数删除符合条件...
  • qq874455953
  • qq874455953
  • 2017-04-25 10:19:31
  • 672

list、vector、map容器erase的区别

一句话总结:list、vector返回的迭代器,map返回空(C++98标准);注意迭代器不要越界。 map是从模板类继承来的,不同的C++版本标准其erase函数也不同: C...
  • Nick_666
  • Nick_666
  • 2017-10-23 19:12:11
  • 105
收藏助手
不良信息举报
您举报文章:1.vector::clear和vector::erase的区别
举报原因:
原因补充:

(最多只允许输入30个字)