• [转]vector iterator not incrementable 的问题


    转自:http://blog.csdn.net/kuaile123/article/details/11105115

    vector::erase误使用问题:

      暂时使用经验: 不能在循环中使用,否则会报如题错误。

    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;

        }

  • 相关阅读:
    Vue
    Vue
    Vue
    Vue
    Vue
    kubernetes
    kubernetes
    kubernetes
    django源码bug解决方案
    UNI-APP 桌面LOGO角标设置(ios)
  • 原文地址:https://www.cnblogs.com/azor/p/3591062.html
Copyright © 2020-2023  润新知