为了账号安全,请及时绑定邮箱和手机立即绑定

c++ iterator 是什么意思

c++ iterator 是什么意思

墨色风雨 2019-02-25 16:16:34
c++ iterator 是什么意思 
查看完整描述

2 回答

?
梦里花落0921

TA贡献1772条经验 获得超5个赞

迭代器
list<int> lst;
for(list<int>::iterator i = lst.begin(); i != lst.end(); i++)
printf("%d", *i);
iterator本质就是一个指针,和下面类似
char s[] = "hello";
for(char* p = s; *p != '\0'; p++) printf("%c", *p);

查看完整回答
反对 回复 2019-03-02
?
慕容森

TA贡献1853条经验 获得超18个赞

iterator是一种抽象,用来封装对数据结构的遍历操作。比如你可以在不用知道数据结构实现的情况下,调用iterator来遍历。这样,我们可以用同一函数来对不同的数据结构进行遍历,因为函数只操作迭代器,不与具体的数据结构直接耦合。

比如STL中find算法,可以用于任何支持输入迭代器(Input iterator category)的数据结构,我们可以将vector::iterator,list::iterator,map::iterator等传递给find,而这些iterator的实现显然依赖于具体的数据结构,并且有很大差异。

当然其他语言中也有iterator的概念,比如java,C#,python。

查看完整回答
反对 回复 2019-03-02
  • 2 回答
  • 0 关注
  • 1018 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信