list::iterator 如何返回下一个元素?

texted2008 2010-04-20 12:30:07
list<int>::iterator 如何返回下一个元素?

返回后一个就好,还有前一个,不用for。

好像不可以这样写
list<char> upcharList;
upcharList = *listItor - 1; //*listItor 是另外一个list的iterator



最简单的方法是什么呢?
...全文
1310 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
冻结 2010-04-20
  • 打赏
  • 举报
回复
list<char> upcharList;
list<char>::iterator iter = upcharList.begin();
++iter; 或 --iter;


list<char>::iterator 不可以 + n / - n 操作。
不支持随机访问。

vector<char>::iterator 可以 + n / - n 操作。
yshuise 2010-04-20
  • 打赏
  • 举报
回复
++listItor;
XLL19880206 2010-04-20
  • 打赏
  • 举报
回复
list<char> upcharList;
list<char>::iterator iter = upcharList.begin();
iter + n或iter - n,改变iter所指元素的位置。
pengzhixi 2010-04-20
  • 打赏
  • 举报
回复
list<char> upcharList;
upcharList = *listItor - 1;//你看看左右两边的类型吧。
linglongyouzhi 2010-04-20
  • 打赏
  • 举报
回复
这个写法错了吧list<int>::iterator和list<char> upcharList;的iterator是不一样的东西啊
编程-鸟人-_-- 2010-04-20
  • 打赏
  • 举报
回复
迭代器遍历!
wade_2003 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 freezezdj 的回复:]
C/C++ code
list<char> upcharList;
list<char>::iterator iter = upcharList.begin();
++iter; 或 --iter;


list<char>::iterator 不可以 + n / - n 操作。
不支持随机访问。

vector<char>::iterator 可以 + n / - n 操作。
[/Quote]
链表不支持,向量支持随机方向的操作
Julykey 2010-04-20
  • 打赏
  • 举报
回复
bidirectional iterator
candeabc123 2010-04-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 yshuise 的回复:]
++listItor;
[/Quote]
正确
--listItor;
howlet2 2010-04-20
  • 打赏
  • 举报
回复
刚建了一个游戏qq群:108546670(3D游戏程序设计) 主要探讨一些游戏开发方面的技术和经验以及C++方面的知识,有兴趣的可以加一下~_~

64,654

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧