iterator とは
- iterator(イテレータ)、日本語では「反復子」と訳されるが、最近では「イテレータ」よ呼ぶことが多いと思う。
- 抽象化されたポインタのことで、コンテナの要素を指し、移動したり要素を参照することが出来る。
- もともとは、外部ライブラリであった STL(Standard Template Library )で導入されたものだが、現在では C++ の標準に取り込まれている。
- コンテナクラスと(STL)アルゴリズムを結びつける結合器的な役割を持つ
- (STL)アルゴリズムを使用せず、イテレータ経由でコンテナを操作し、なんらかの処理をすることも可能
- これは、自分でアルゴリズムを書いているようなもの
- ランダムアクセス、両方向移動可能、前方向のみ移動可能という種別がある。コンテナクラスにより決まる
- 要素を修正できるイテレータ、参照のみが可能なイテレータがある。後者は const_iterator と呼ばれる。
- begin(), end() で(非const)イテレータを取得、cbegin(), cend() で const イテレータを取得出来る
std::vector::iterator とは
- std::vector 用のイテレータのこと
参考
演習問題解答例