Bibliothèque C ++ - <iterator>

introduction

C'est un objet semblable à un pointeur qui peut être incrémenté avec ++, déréférencé avec * et comparé à un autre itérateur avec! =

Catégories

Catégorie Propriétés expressions valides
toutes catégories constructible par copie , assignable par copie et destructible

X b(a);

b = a;

Il peut être incrémenté

++a

a++

Accès aléatoire Bidirectionnel Vers l'avant Contribution Il prend en charge les comparaisons égalité / inégalité

a == b

a != b

Il peut être déréférencé en tant que rvalue

*une

a-> m

Production

Il peut être déréférencé en tant que lvalue

(uniquement pour les types d'itérateur mutables )

* a = t

* a ++ = t

constructible par défaut

X a;

X()

Multi-pass: ni le déréférencement ni l'incrémentation n'affectent la déréférencabilité { b = a; *a++; *b; }
Il peut être décrémenté

--une

une--

*une--

Il prend en charge les opérateurs arithmétiques + et -

a + n

n + a

un

un B

Il prend en charge les comparaisons d'inégalités ( < , > , <= et > = ) entre les itérateurs

a <b

a> b

a <= b

a> = b

Il prend en charge les opérations d'assignation composées + = et - =

a + = n

a - = n

Il prend en charge l'opérateur de déréférence de décalage ( [] ) un]

Les fonctions

N ° Sr. Fonctions et description
1 avance

Il fait avancer l'itérateur de n positions d'élément.

2 distance

Il renvoie la distance entre les itérateurs.

3 commencer

Il est utilisé pour commencer un itérateur.

4 fin

Il est utilisé pour terminer un itérateur.

5 prev

Il est utilisé pour obtenir l'itérateur vers l'élément précédent.

6 prochain

Il est utilisé pour amener l'itérateur à l'élément suivant.

Générateurs d'itérateur

N ° Sr. Générateurs d'itérateur et description
1 back_inserter

Il construit un itérateur d'insertion arrière.

2 inserteur

Il construit un itérateur d'insertion

3 make_move_iterator

Il construit des itérateurs de déplacement.

Des classes

N ° Sr. Classes et description
1 itérateur

Il itère la classe de base.

2 iterator_traits

C'est un trait d'itérateur.

Itérateurs prédéfinis

N ° Sr. Itérateurs et description prédéfinis
1 reverse_iterator

C'est un itérateur inversé.

2 move_iterator

C'est un itérateur de mouvement.

3 back_insert_iterator

C'est un itérateur d'insertion arrière.

4 front_insert_iterator

C'est un itérateur d'insertion avant.

5 insert_iterator

Il est utilisé pour insérer un itérateur.

6 istream_iterator

C'est un itérateur de flux d'entrée.

sept ostream_iterator

C'est un itérateur de flux de sortie.

8 istreambuf_iterator

C'est un itérateur de tampon de flux d'entrée.

sept ostreambuf_iterator

C'est un itérateur de tampon de flux de sortie.

Balises de catégorie

N ° Sr. Balises de catégorie et description
1 input_iterator_tag

Catégorie d'itérateur d'entrée.

2 output_iterator_tag

catégorie d'itérateur de sortie.

3 forward_iterator_tag

Catégorie d'itérateur en avant.

4 bidirectional_iterator_tag

Catégorie d'itérateur bidirectionnel.

5 random_access_iterator_tag

Catégorie d'itérateur à accès aléatoire.