erase()函数对容器干了啥?
#include <iostream>
#include <list>
using namespace std;
int main()
{
int ia[] = {0, 1, 1, 2, 3, 5, 8, 13, 21, 55, 89};
list<int> ilist (ia, ia+11);
int nLen = ilist.size();
list<int>::iterator it = ilist.begin();
for(int index=0; index < nLen; index++)
{
if((index+1)%2 != 0)
{
ilist.erase(it);
}
it++;
}
return 0;
}预测一下,结果会怎样。
...全文
相关推荐
vector与map的erase()函数详细解析
vector和map都不能将it++写在for循环中,而在循环体内erase(it)
c++之vector容器erase操作
c++之vector容器erase操作,在容器列表中删除中间一行的操作过程,代码分为一维容器和二维容器操作两部分,详细见代码
基于C++ list中erase与remove函数的使用详解
本篇文章是对C++ list中erase与remove函数的使用进行了详细的分析介绍,需要的朋友参考下
stl容器set,map,vector之erase用法与返回值详细解析
在使用 list、set 或 map遍历删除某些元素时可以这样使用,如下所示
C++ erase()函数用法[项目源码]
本文详细介绍了C++中std::string和std::vector容器的erase()函数用法。erase()函数用于删除容器中的元素,包括删除指定位置的单个元素、删除指定范围内的元素以及删除所有元素。文章通过示例代码展示了string和vector中erase()的不同用法,并提醒了一些常见错误用法。例如,在string中,erase(pos)会删除从pos开始的所有字符,而不仅仅是pos位置的字符。在vector中,erase()可以高效地删除单个或多个元素,但需注意正确使用迭代器。此外,文章还简要提及了list容器中erase()的高效性,但由于使用较少未展开说明。


