次の方法で共有


<iterator>

反復子のプリミティブ、定義済みの反復子、およびストリームの反復子、いくつかのサポートのテンプレート定義します。定義済みの反復子は挿入と逆のアダプターが含まれます。挿入の反復子のアダプターのクラスは 3 つあります: 先頭、[戻ると概要。オーバーライドのセマンティクスは、ではなくコンテナーのメンバー関数の反復子が提供する挿入のセマンティクスを提供します。

#include <iterator>

解説

反復子は、. ++ プログラムが一貫した方法で異なるデータ構造を使用できるようにする方法で要件から抽出するポインターの原則です。反復子は、コンテナーとジェネリックなアルゴリズムの仲介役として機能します。特定のデータ型を操作する代わりに反復子の型で指定されている範囲を操作するには、アルゴリズムが定義されます。反復子の要件を満たす任意のデータ構造体でもアルゴリズムによって操作する場合があります。反復子は、要件の独自のセットごとに、結果の機能の 5 種類のカテゴリがあります:または

  • 出力: 前方移動、および ostream インサーターして値を格納および取得する可能性があります。

  • 入力: 前方移動、istream して値を取得する格納しないことがあります。

  • 転送: 前方移動し、その値を格納および取得する可能性があります。

  • 双方向: 転送名とフォールバックは、セット、複数のセット、マップ、multimap によって、リスト値を格納および取得する場合もあります。

  • ランダム アクセス: 任意の順序でアクセス要素は、deque、文字列と配列によって、ベクター値を格納および取得する場合もあります。

要素には、要件と、より強力なアクセスできる反復子は、以下のものの反復子の代わりに使用されることがあります。たとえば、前方反復子がの場合に呼び出すと、ランダム アクセス反復子代わりに使用される可能性がある。

k3tf6509.collapse_all(ja-jp,VS.110).gif関数

前進

位置の指定した数によって反復子をインクリメントします。

back_inserter

指定したコンテナーの [戻る] で要素を挿入したりできる反復子を作成します。

begin

指定したコンテナーの最初の要素への反復子を取得します。

間隔

2 反復子によってアドレス位置の間にインクリメント値の数を判断します。

End

指定したコンテナーの最後の要素の後に要素への反復子を取得します。

front_inserter

指定したコンテナーの前に要素を挿入したりできる反復子を作成します。

の挿入演算子です。

挿入の指定された位置にあるコンテナーに新しい要素を追加する反復子のアダプター。

make_move_iterator

提供された反復子を含む移動の反復子をとして格納されている基本反復子を返します。

次に、

指定された回数を反復処理し、新しい反復子の位置を返します。

逆で指定された回数を反復処理し、新しい反復子の位置を返します。

k3tf6509.collapse_all(ja-jp,VS.110).gif演算子

operator! =

演算子の左側の反復子オブジェクトが右側の反復子オブジェクトと等しくないかどうかを調べます。

operator==

演算子の左側の反復子オブジェクトが右側の反復子オブジェクトと等しいかどうかを調べます。

operator<

演算子の左側の反復子オブジェクトが右側の反復子のオブジェクトより小さいテスト。

operator<=

演算子の左側の反復子オブジェクトが右側の反復子オブジェクト以下かどうかをテストします。

operator>

演算子の左側の反復子オブジェクトが右側のオブジェクトより大きい反復子のテスト。

operator>=

演算子の左側の反復子オブジェクトが右側の反復子オブジェクトに値以上でテスト。

operator+

反復子にオフセットを追加し、新しいオフセット位置に挿入された要素を新しい reverse_iterator アドレスを返します。

スコープ解決

一方の値を減算し、戻り値から 1 の反復子の相違点。

k3tf6509.collapse_all(ja-jp,VS.110).gifClasses

back_insert_iterator

このテンプレート クラスは、出力反復子オブジェクトを表します。これは、呼び出されたコンテナーを格納 [ポインタ] の保護されたオブジェクトを通じてアクセス [コンテナー]型のコンテナーに要素を挿入します。

bidirectional_iterator_tag

双方向反復子を表す iterator_category の関数に戻り値の型を提供するクラス。

checked_array_iterator

ランダム アクセスを使用して配列にアクセスするクラス、チェックを行う反復子。

forward_iterator_tag

前方反復子を表す iterator_category の関数に戻り値の型を提供するクラス。

front_insert_iterator

このテンプレート クラスは、出力反復子オブジェクトを表します。これは、呼び出されたコンテナーを格納 [ポインタ] の保護されたオブジェクトを通じてアクセス [コンテナー]型のコンテナーに要素を挿入します。

input_iterator_tag

入力反復子を表す iterator_category の関数に戻り値の型を提供するクラス。

insert_iterator

このテンプレート クラスは、出力反復子オブジェクトを表します。これは、呼び出されたコンテナーを格納 [ポインタ] の保護されたオブジェクトを通じてアクセス [コンテナー]型のコンテナーに要素を挿入します。また、iterという [反復子] の保護されたオブジェクトを、クラスの Container::iterator格納します。

istream_iterator

このテンプレート クラスは、入力反復子オブジェクトを表します。これは、格納 basic_istream<Elemにオブジェクトを通じて、ポインター型の、Trアクセス > 入力ストリームからクラス Ty のオブジェクトを展開します。

istreambuf_iterator

このテンプレート クラスは、入力反復子オブジェクトを表します。これは、格納 basic_streambuf<Elemにオブジェクトを通じて型 [ポインタ] の、Trアクセス > 出力ストリームのバッファーにクラス Elem の要素を挿入します。

iterator

このテンプレート クラスは、すべての反復子用に基本型として使用されます。

iterator_traits

別の反復子に関連付けられているクリティカルな型を指定するテンプレート ヘルパー クラスを、同じ方法で参照できるように入力します。

move_iterator

move_iterator のオブジェクトを型 RandomIteratorのランダム アクセス反復子を格納します。これはランダム アクセス反復子と同様に逆参照した場合を除いてします。operator* の結果は value_type&&: に暗黙的に rvalue referenceを行うためにキャストします。

ostream_iterator

このテンプレート クラスは、出力反復子オブジェクトを表します。これは、格納 basic_ostream<Elemにオブジェクトを通じて型 [ポインタ] の、Trアクセス > 出力ストリームに [種類] クラスのオブジェクトを挿入します。

ostreambuf_iterator のクラス

このテンプレート クラスは、出力反復子オブジェクトを表します。これは、格納 basic_streambuf<Elemにオブジェクトを通じて、ポインター型の、Trアクセス > 出力ストリームのバッファーにクラス Elem の要素を挿入します。

output_iterator_tag

出力反復子を表す iterator_category の関数に戻り値の型を提供するクラス。

random_access_iterator_tag

ランダム アクセス反復子を表す iterator_category の関数に戻り値の型を提供するクラス。

reverse_iterator

このテンプレート クラスは、逆の順序でだけランダム アクセス反復子のようにするオブジェクトについて説明します。

参照

関連項目

C++ の標準ライブラリのスレッド セーフ

標準テンプレート ライブラリ

その他の技術情報

ヘッダー ファイル