文章目录
什么是迭代器
无论是序列容器还是关联容器,最常做的操作无疑是遍历容器中存储的元素,而实现此操作,多数情况会选用“迭代器(iterator)”来实现。那么,迭代器到底是什么呢?
指针可以用来遍历存储空间连续的数据结构,但是对于存储空间非连续的,就需要寻找一个行为类似指针的类,来对非数组的数据结构进行遍历。
迭代器是一种检查容器内元素并遍历元素的数据类型,提供了对一个容器中对象的访问方法(每种容器类型都定义了自己的迭代器类型,如
vector:vector< int>:: iterator iter;
),并且定义了容器中对象的范围。
迭代器有什么用处?泛型算法的参数为什么接收的都是迭代器?
迭代器iterator是C++ STL的组件之一,作用是用来遍历容器,而且是通用的遍历容器元素的方式,即无论容器是基于什么数据结构实现的,尽管不同的数据结构,遍历元素的方式不一样,但是用迭代器遍历不同容器的代码是完全一样的。经典的迭代器遍历容器的代码如下:
vector<int