vector iterator not incrementable错误解决

来源:互联网 发布:合肥市行知学校升学率 编辑:程序博客网 时间:2024/06/05 15:10

原出处:http://www.cnblogs.com/azor/p/3591062.html

2014/03/11更新:循环删除容器中符合条件的元素

  《C++ Primer(Edit 5)》, P.349

  Both forms of erase return an iterator referring to the location after the(last) element that was removed.That is, if j is the element following i, then erase(i) will return an iterator referring to j.

  Example:

    list<int> lst = {0,1,2,3,4,5,6,7,8,9}

    auto it = lst.begin();

    while (it != lst.end())

    {

      if (*it % 2)

        it = lst.erase(it);

      else

        ++it;

    }


0 0
原创粉丝点击