<iterator>
Define los primitivos de iterador, iteradores predefinidos e iteradores de la secuencia, así como varias plantillas que admiten.Los adaptadores predefinidos de inserción y inversos de inclusión de iteradores.Hay tres clases de adaptadores de iterador de inserción: nuevo, a, y general.Proporcionan la semántica de la inserción en lugar de la semántica sobrescribirá que los iteradores de una función miembro contenedor proporcionan.
#include <iterator>
Comentarios
Iteradores es una generalización de punteros, resumiendo de los requisitos de tal forma que el programa de C++. ejecute diversas estructuras de datos de manera uniforme.Iteradores actuar como intermediarios entre contenedores y algoritmos genéricos.En lugar de trabajar en tipos de datos específicos, los algoritmos son definido funcionar en un intervalo especificado por un tipo de iterador.Cualquier estructura de datos que satisfaga los requisitos de iterador podrá trabajar por el algoritmo.hay cinco tipos o categorías de iterador, de cada uno con su propio conjunto de requisitos y de funcionalidad resultante:
Resultado: el desplazamiento hacia delante, puede almacenar pero no recuperar valores, proporcionadas por el ostream y el insertador.
entrada: el desplazamiento hacia delante, puede recuperar pero los valores no almacenados, proporcionadas por el istream.
Frontal: el desplazamiento hacia delante, puede almacenar y recuperar valores.
bidireccional: el desplazamiento hacia delante y hacia atrás, puede almacenar y recuperar valores, proporcionadas por la lista, el conjunto, el conjunto múltiple, el mapa, y el multimap.
acceso aleatorio: los elementos acceso en cualquier orden, puede almacenar y recuperar valores, proporcionadas por el vector, el deque, la cadena, y la matriz.
Iteradores que tienen mayores requisitos y acceso tan más eficaz a los elementos se pueden usar en lugar de iteradores con menos requisitos.Por ejemplo, si un iterador hacia delante se llama para, un iterador de acceso aleatorio pueda utilizado en su lugar.
Funciones
incrementa un iterador por un número especificado de posiciones. |
|
Crea un iterador que pueda insertar elementos en la reproducción de un contenedor especificado. |
|
Recupera un iterador al primer elemento de un contenedor especificado. |
|
determina el número de incrementos entre las posiciones dirigidas por dos iteradores. |
|
Recupera un iterador al elemento tras el último elemento en el contenedor especificado. |
|
Crea un iterador que pueda insertar elementos en el principio de un contenedor especificado. |
|
Un adaptador de iterador que agrega un nuevo elemento a un contenedor en un punto especificado de inserción. |
|
Devuelve un iterador de movimiento que contiene el iterador proporcionado como el iterador base almacenado. |
|
Recorre un número especificado de veces y devuelve la nueva posición del iterador. |
|
Recorre en orden inverso al número de veces especificado y devuelve la nueva posición del iterador. |
Operadores
Comprueba si el objeto de iterador en el lado izquierdo del operador no es igual al objeto de iterador en el lado derecho. |
|
Comprueba si el objeto de iterador en el lado izquierdo del operador es igual al objeto de iterador en el lado derecho. |
|
Comprueba si el objeto de iterador en el lado izquierdo del operador es menor que el objeto de iterador en el lado derecho. |
|
Comprueba si es el objeto de iterador en el lado izquierdo del operador menor o igual que el objeto de iterador en el lado derecho. |
|
Comprueba si el objeto de iterador en el lado izquierdo del operador es mayor que el objeto de iterador en el lado derecho. |
|
Comprueba si es el objeto de iterador en el lado izquierdo del operador mayor o igual que el objeto de iterador en el lado derecho. |
|
Agrega un desplazamiento un iterador y devuelve nuevo reverse_iterator que dirige el elemento insertado en la nueva posición de desplazamiento. |
|
resta un iterador de otro y devuelve la diferencia. |
Clases
La clase de plantilla describe un objeto de iterador de salida.Insertar elementos en un contenedor de Contenedorescrito, que tiene acceso a través del objeto protegido de puntero que almacena el contenedor denominado. |
|
Una clase que proporciona un tipo de valor devuelto para una función de iterator_category que representa un iterador bidireccional. |
|
Una clase que tiene acceso a una matriz utilizando un acceso aleatorio, iterador comprobado. |
|
Una clase que proporciona un tipo de valor devuelto para una función de iterator_category que representa un iterador hacia delante. |
|
La clase de plantilla describe un objeto de iterador de salida.Insertar elementos en un contenedor de Contenedorescrito, que tiene acceso a través del objeto protegido de puntero que almacena el contenedor denominado. |
|
Una clase que proporciona un tipo de valor devuelto para una función de iterator_category que representa un iterador de entrada. |
|
La clase de plantilla describe un objeto de iterador de salida.Insertar elementos en un contenedor de Contenedorescrito, que tiene acceso a través del objeto protegido de puntero que almacena el contenedor denominado.también almacena el objeto protegido de iterador , de la clase contenedor:: iterador, denominado iter. |
|
La clase de plantilla describe un objeto de iterador de entrada.Extrae objetos de clase Ty de un flujo de entrada, que tiene acceso a través de un objeto de almacenamiento, de tipo puntero a basic_istream<Elem, Tr>. |
|
La clase de plantilla describe un objeto de iterador de entrada.Insertar los elementos de la clase Elem en un búfer del flujo de salida, que tiene acceso a través de un objeto de almacenamiento, de puntero tipo a basic_streambuf<Elem, Tr>. |
|
La clase de plantilla se usa como tipo base para todos los iteradores. |
|
Una clase de plantilla que proporciona los tipos críticos que están asociados con diferentes tipos de iterador para que ocuparse de la misma manera. |
|
un objeto de move_iterator almacena un iterador de acceso aleatorio de RandomIteratorescrito.Se comporta como un iterador de acceso aleatorio, excepto cuando está administrada.El resultado de operator* es implícitamente conversión a value_type&&: para crear rvalue reference. |
|
La clase de plantilla describe un objeto de iterador de salida.Inserta objetos de clase tipo en una secuencia de salida, que tiene acceso a través de un objeto de almacenamiento, de puntero tipo a basic_ostream<Elem, Tr>. |
|
La clase de plantilla describe un objeto de iterador de salida.Insertar los elementos de la clase Elem en un búfer del flujo de salida, que tiene acceso a través de un objeto de almacenamiento, de tipo puntero a basic_streambuf<Elem, Tr>. |
|
Una clase que proporciona un tipo de valor devuelto de la función de iterator_category que representa un iterador de salida. |
|
Una clase que proporciona un tipo de valor devuelto de la función de iterator_category que representa un iterador de acceso aleatorio. |
|
La clase de plantilla describe un objeto que se comporte como un iterador de acceso aleatorio, sólo en orden inverso. |
Vea también
Referencia
Seguridad para subprocesos de la biblioteca estándar de C++
Biblioteca de plantillas estándar