C++ std::vector::iterator 入門
Copyright (C) 2014 by Nobuhide Tsuda

iterator とは

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

std::vector::iterator とは

  • std::vector 用のイテレータのこと

参考


演習問題解答例