反復子

『Accelerated C++』より抜粋

ある型が反復子だという場合、実際には、その型がサポートする操作のことを問題にしているのです。つまり、ある型が特定の操作をサポートするとき。そしてそのときのみ。その型は反復子であるといえるのです。

コンテナによって、可能な操作が異なります。これは、反復子のサポートする操作の違いになります。

異なる反復子は異なる操作をサポートするのです。そのため、いろいろなアルゴリズムがどのような操作のできる反復子を使うか、どのような反復子にどのような操作が可能かを理解することはとても重要なのです。

C++の標準ライブラリの基本的な考え方は、アルゴリズムとコンテナを反復子でつなぐことで、データ構造非依存性が得られるというものである。

反復子はコンテナの内部を指し、その要素にアクセスするためのオブジェクトです。