Biblioteca C ++ - <iterador>

Introducción

Es un objeto similar a un puntero que se puede incrementar con ++, desreferenciar con * y comparar con otro iterador con! =

Categorías

categoría propiedades expresiones válidas
todas las categorias copia-construible , copia-asignable y destructible

X b(a);

b = a;

Se puede incrementar

++a

a++

Acceso aleatorio Bidireccional Adelante Entrada Admite comparaciones de igualdad / desigualdad

a == b

a != b

Se puede desreferenciar como un valor r

*un

a-> m

Salida

Se puede desreferenciar como un valor l

(solo para tipos de iteradores mutables )

* a = t

* a ++ = t

construible por defecto

X a;

X()

Multi-pass: ni la desreferenciación ni el incremento afectan la desreferenciabilidad { b = a; *a++; *b; }
Se puede decrementar

--un

un--

*un--

Soporta operadores aritméticos + y -

a + n

n + a

un

a - b

Admite comparaciones de desigualdad ( < , > , <= y > = ) entre iteradores

a <b

a> b

a <= b

a> = b

Admite operaciones de asignación compuestas + = y - =

a + = n

a - = n

Es compatible con el operador de desreferencia de compensación ( [] ) un]

Funciones

No Señor. Funciones y descripción
1 avanzar

Avanza el iterador en n posiciones de elementos.

2 distancia

Devuelve la distancia entre iteradores.

3 empezar

Se usa para comenzar un iterador.

4 fin

Se utiliza para finalizar un iterador.

5 anterior

Se usa para llevar el iterador al elemento anterior.

6 siguiente

Se usa para llevar el iterador al siguiente elemento.

Generadores de iteradores

No Señor. Generadores de iteradores y descripción
1 back_inserter

Construye un iterador de inserción posterior.

2 insertador

Construye insert iterator

3 make_move_iterator

Construye iteradores de movimiento.

Clases

No Señor. Clases y descripción
1 iterador

It iteradores de clase base.

2 iterator_traits

Es un iterador de rasgos.

Iteradores predefinidos

No Señor. Iteradores predefinidos y descripción
1 reverse_iterator

Es un iterador inverso.

2 move_iterator

Es un iterador de movimiento.

3 back_insert_iterator

Es un iterador de inserción posterior.

4 front_insert_iterator

Es un iterador de inserción frontal.

5 insert_iterator

Se utiliza para insertar un iterador.

6 istream_iterator

Es un iterador de flujo de entrada.

7 ostream_iterator

Es un iterador de flujo de salida.

8 istreambuf_iterator

Es un iterador de búfer de flujo de entrada.

7 ostreambuf_iterator

Es un iterador de búfer de flujo de salida.

Etiquetas de categoría

No Señor. Etiquetas de categoría y descripción
1 input_iterator_tag

Ingrese la categoría del iterador.

2 output_iterator_tag

categoría de iterador de salida.

3 forward_iterator_tag

Categoría de iterador de avance.

4 bidirectional_iterator_tag

Categoría de iterador bidireccional.

5 etiqueta_iterador_de_acceso_aleatorio

Categoría de iterador de acceso aleatorio.