C ++ライブラリ-<イテレータ>
前書き
これは、++でインクリメントし、*で逆参照し、!=で別のイテレーターと比較できるポインターのようなオブジェクトです。
カテゴリ
| カテゴリー | プロパティ | 有効な式 | |||
|---|---|---|---|---|---|
| すべてのカテゴリ | コピー構築可能、コピー割り当て可能、破壊可能 |
|
|||
| インクリメントできます |
|
||||
| ランダムアクセス | 双方向 | フォワード | 入力 | 平等/不平等の比較をサポートします |
|
| 右辺値として逆参照できます | * a a-> m |
||||
| 出力 | 左辺値として逆参照できます (可変イテレータタイプの場合のみ) |
* a = t * a ++ = t |
|||
| デフォルト-構築可能 | X a; バツ() |
||||
| マルチパス:逆参照も増分も逆参照に影響しません | { b = a; *a++; *b; } |
||||
| デクリメントできます | --a a-- * a-- |
||||
| 算術演算子+および-をサポートします | a + n n + a a-n a-b |
||||
| イテレータ間の不等式比較(<、>、<=および> =)をサポートします | a <b a> b a <= b a> = b |
||||
| 複合代入演算+ =および-=をサポートします | a + = n a- = n |
||||
| オフセット逆参照演算子([])をサポートします | a [n] | ||||
関数
| シニア番号 | 機能と説明 |
|---|---|
| 1 | 前進 イテレータをn個の要素位置だけ進めます。 |
| 2 | 距離 イテレータ間の距離を返します。 |
| 3 | ベギン イテレータを開始するために使用されます。 |
| 4 | 終わり イテレータを終了するために使用されます。 |
| 5 | 前へ イテレータを前の要素に移動するために使用されます。 |
| 6 | 次 イテレータを次の要素に移動するために使用されます。 |
イテレータジェネレータ
| シニア番号 | イテレータジェネレータと説明 |
|---|---|
| 1 | back_inserter バックインサートイテレータを構築します。 |
| 2 | インサーター 挿入イテレータを構築します |
| 3 | make_move_iterator 移動イテレータを構築します。 |
クラス
| シニア番号 | クラスと説明 |
|---|---|
| 1 | イテレータ 基本クラスを繰り返します。 |
| 2 | iterator_traits これはイテレータの特性です。 |
事前定義されたイテレータ
| シニア番号 | 事前定義されたイテレータと説明 |
|---|---|
| 1 | reverse_iterator 逆イテレータです。 |
| 2 | move_iterator 移動イテレータです。 |
| 3 | back_insert_iterator バックインサートイテレータです。 |
| 4 | front_insert_iterator フロントインサートイテレータです。 |
| 5 | insert_iterator イテレータを挿入するために使用されます。 |
| 6 | istream_iterator これは、入力ストリームのイテレータです。 |
| 7 | ostream_iterator これは、出力ストリームのイテレータです。 |
| 8 | istreambuf_iterator これは、入力ストリームバッファイテレータです。 |
| 7 | ostreambuf_iterator これは、出力ストリームバッファイテレータです。 |
カテゴリタグ
| シニア番号 | カテゴリタグと説明 |
|---|---|
| 1 | input_iterator_tag イテレータカテゴリを入力します。 |
| 2 | output_iterator_tag 出力イテレータカテゴリ。 |
| 3 | forward_iterator_tag フォワードイテレータカテゴリ。 |
| 4 | 双方向イテレータタグ 双方向イテレータカテゴリ。 |
| 5 | random_access_iterator_tag ランダムアクセスイテレータカテゴリ。 |