c++ iterator 是什么意思

c++ iterator 是什么意思 


墨色风雨
浏览 1024回答 2
2回答

梦里花落0921

迭代器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);

慕容森

iterator是一种抽象,用来封装对数据结构的遍历操作。比如你可以在不用知道数据结构实现的情况下,调用iterator来遍历。这样,我们可以用同一函数来对不同的数据结构进行遍历,因为函数只操作迭代器,不与具体的数据结构直接耦合。比如STL中find算法,可以用于任何支持输入迭代器(Input iterator category)的数据结构,我们可以将vector::iterator,list::iterator,map::iterator等传递给find,而这些iterator的实现显然依赖于具体的数据结构,并且有很大差异。当然其他语言中也有iterator的概念,比如java,C#,python。
打开App,查看更多内容
随时随地看视频慕课网APP