std::vector 删除指定位置元素

经常使用std::vector的都知道,我一般循环遍历时,都这样使用

std::vector<int> vDatas;
vDatas.pushback(1);
vDatas.pushback(2);
vDatas.pushback(3);

for(auto it: vDatas)
{
    int a = it;
}

如果根据条件找到数组中一个数值,需要进行删除,无法直接对it进行删除,需要改为下面这个操作

for(int i = 0;i<vDatas.size();i++)
{
      cout<<vDatas[i]<<" ";
      if(vDatas[i]==2)
      {
         v.erase(v.begin()+i);
      }
}

使用的函数还是erase,但是需要有位置的索引,所以换成这种方式进行遍历,才可以。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值