reverse_iterator Class
La clase de plantilla es un adaptador de iterador que describe un objeto de iterador inversa se comporta como un iterador de acceso aleatorio o bidireccional, sólo a la inversa.Permite el recorrido hacia atrás de un rango.
template <class RandomIterator>
class reverse_iterator
Parámetros
- RandomIterator
El tipo que representa el iterador se adapte a operar en orden inverso.
Comentarios
Contenedores de biblioteca de plantillas estándar existentes también definen reverse_iterator y const_reverse_iterator tipos y tienen funciones miembro rbegin y rend que devuelva los iteradores inversas.Estos iteradores han sobrescribir semántica.El reverse_iterator adaptador complementa esta funcionalidad ofrece inserta semántica y también se puede utilizar con las secuencias.
El reverse_iterators que requieren un iterador bidireccional no debe llamar a cualquiera de los miembros las funciones de operator+=, operator+, operator-=, operator-, o operator[], que sólo puede utilizarse con los iteradores de acceso aleatorio.
Si el intervalo de un iterador es [_First, _Last), donde el corchete de la izquierda indica la inclusión en _primer y el paréntesis de la derecha indica la inclusión de elementos hasta _izquierda excepto _izquierda sí mismo.Los mismos elementos se incluyen en la secuencia invertida [rev – _First, rev – _izquierda) para que si _izquierda es el elemento de uno pasado-el final de una secuencia, a continuación, el primer elemento rev – _primer en los puntos de secuencia invertida a * (_izquierda -1).La identidad que se relaciona con los iteradores inversas todos sus iteradores subyacentes es:
&*(reverse_iterator ( i ) ) == &*( i – 1 ).
En la práctica, esto significa que en el invertida secuencia la reverse_iterator hará referencia al elemento de una posición más allá (a la derecha de) el elemento que el iterador hacía referencia a la secuencia original.Por tanto, si un iterador dirigido el elemento 6 en la secuencia (2, 4, 6, 8), a continuación, el reverse_iterator abordará el cuarto elemento de la secuencia invertida (8, 6, 4, 2).
Constructores
Construye un valor predeterminado reverse_iterator o un reverse_iterator desde un iterador subyacente. |
Typedefs
Un tipo que proporciona la diferencia entre dos reverse_iterators que hace referencia a elementos dentro del mismo contenedor. |
|
Un tipo que proporciona el iterador subyacente para una reverse_iterator. |
|
Un tipo que proporciona un puntero a un elemento dirigido por un reverse_iterator. |
|
Un tipo que proporciona una referencia a un elemento dirigida por un reverse_iterator. |
Funciones miembro
Recupera el iterador subyacente de su reverse_iterator. |
Operadores
Devuelve el elemento que un reverse_iterator las direcciones. |
|
Agrega un desplazamiento a un iterador y devuelve el nuevo reverse_iterator abordar el elemento insertado en la nueva posición de desplazamiento. |
|
Incrementos de la reverse_iterator en el siguiente elemento. |
|
Agrega un desplazamiento especificado de un reverse_iterator. |
|
Resta un desplazamiento de un reverse_iterator y devuelve un reverse_iterator direccionamiento del elemento en la posición de desplazamiento. |
|
Disminuye la reverse_iterator para el elemento anterior. |
|
Resta un desplazamiento especificado de un reverse_iterator. |
|
Devuelve un puntero al elemento dirigido por el reverse_iterator. |
|
Devuelve una referencia a un desplazamiento del elemento en el elemento dirigida por un reverse_iterator por un número de posiciones especificado. |
Requisitos
Encabezado: <iterator>
Espacio de nombres: std
Vea también
Referencia
Seguridad para subprocesos de la biblioteca estándar de C++
Biblioteca de plantillas estándar