金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  423 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks

摘自: http://www.cadcaecam.com/forum/thread-10455-1-1.html

已知待删除元素靠近list的尾部, 是否可以从尾部搜索并删除呢?

   for (MYLIST::reverse_iterator i = mylist.rbegin(); i != mylist.rend(); ++i)
{
if (THE_VALUE == *i)
mylist.erase(i);
}

因为erase()只不能以反向迭代器为参数, 上述代码行不通.


应该是:

    if (THE_VALUE == *i)
mylist.erase((++i).base());
(转载请注明来源于金庆的专栏)


posted on 2009-11-03 14:05 金庆 阅读(579) 评论(1)  编辑 收藏 引用 所属分类: 1. C/C++

评论

# re: 如何删list靠近尾部的元素 2010-07-27 02:43 yisa
请放弃STL::List把, 我都看得你累死了  回复  更多评论
  


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理