博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ vector 删除符合条件的元素
阅读量:6633 次
发布时间:2019-06-25

本文共 1024 字,大约阅读时间需要 3 分钟。

C++ vector中实际删除元素使用的是容器vecrot中std::vector::erase()方法。

C++ 中std::remove()并不删除元素,因为容器的size()没有变化,只是元素的替换。

1.std::vector::erase()

  函数原型:iterator erase (iterator position);  //删除指定元素

       iterator erase (iterator first, iterator last);  //删除指定范围内的元素

  返回值:指向删除元素(或范围)的下一个元素。(An iterator pointing to the new location of the element that followed the last element erased by the function call. This is the container end if the operation erased the last element in the sequence.)

2.代码实例

1 #include
2 #include
3 #include
4 using namespace std; 5 6 int out(vector
&iVec) 7 { 8 for(int i=0;i
iVec;17 vector
::iterator it;18 int i;19 for( i=0;i<10;i++)20 iVec.push_back(i);21 22 cout<<"The Num(old):";out(iVec);23 for(it=iVec.begin();it!=iVec.end();)24 {25 if(*it % 3 ==0)26 it=iVec.erase(it); //删除元素,返回值指向已删除元素的下一个位置 27 else28 ++it; //指向下一个位置29 }30 cout<<"The Num(new):";out(iVec);31 return 0;32 }

 执行输出:

 

转载于:https://www.cnblogs.com/xudong-bupt/p/3522457.html

你可能感兴趣的文章
Django orm的正向反向操作
查看>>
Docker修改默认的网段
查看>>
[ASP.NET]二维码的创建
查看>>
成员修饰:静态和实例成员
查看>>
mariadb 下载与安装编译
查看>>
Oracle Sql脚本进行硬盘写文件操作!
查看>>
【沟通的艺术】一次技术演讲的自我反省
查看>>
如何在centos下使python开发语法高亮显示
查看>>
Windows Phone 7 问答(答案部分)
查看>>
macvlan 网络隔离和连通 - 每天5分钟玩转 Docker 容器技术(57)
查看>>
努力打拼
查看>>
Android第十期 - 百度地图
查看>>
linux下删除特殊字符中文乱码文件方法
查看>>
KVM虚拟机静态迁移
查看>>
IT管理新举措
查看>>
Python封装及解构
查看>>
frame-relay map IP
查看>>
CentOS 6.5 Varnish缓存服务详解及应用实现 推
查看>>
Oracle Study之--Oracle TimeZone升级
查看>>
PIM规则总结
查看>>