Exportar (0) Imprimir
Expandir todo
Este artículo se tradujo de forma manual. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

reverse_iterator (Clase)

La clase de plantilla es un adaptador de iterador que describe un objeto iterador inverso que se comporta como un iterador de acceso aleatorio o bidireccional, pero en orden inverso. Habilita el recorrido hacia atrás de un intervalo.

template <class RandomIterator>
class reverse_iterator

RandomIterator

El tipo que representa el iterador que se adaptará para trabajar en orden inverso.

Los contenedores existentes en la Biblioteca de plantillas estándar también definen los tipos reverse_iterator y const_reverse_iterator y tienen funciones miembro rbegin y rend que devuelven iteradores inversos. Estos iteradores tienen semántica de sobrescritura. El adaptador reverse_iterator complementa esta funcionalidad porque proporciona semántica de inserción y también se puede utilizar con flujos.

Los reverse_iterators que requiere un iterador bidireccional no deben llamar a ninguna de las funciones miembro operator+=, operator+, operator-=, operator- u operator[], que solo se pueden utilizar con iteradores de acceso aleatorio.

Si el intervalo de un iterador es [_First, _Last), donde el corchete izquierdo indica la inclusión en _First y el paréntesis derecho indica la inclusión de elementos hasta _Left pero la exclusión del propio _Left. Los mismos elementos están incluidos en la secuencia inversa [rev_First, rev – _Left) de manera que si _Left es el elemento siguiente al elemento final de una secuencia, entonces el primer elemento rev – _First de la secuencia inversa apunta a *(_Left – 1 ). La identidad que relaciona todos los iteradores inversos con sus iteradores subyacentes es:

&*(reverse_iterator ( i ) ) == &*( i – 1 ).

En la práctica esto significa que, en la secuencia inversa, reverse_iterator hará referencia al elemento situado una posición más allá (a la derecha) del elemento al que el iterador se había referido en la secuencia original. Así pues, si un iterador señaló el elemento 6 en la secuencia (2, 4, 6, 8), entonces reverse_iterator señalará el elemento 4 en la secuencia inversa (8, 6, 4, 2).

6x256702.collapse_all(es-es,VS.120).gifConstructores

reverse_iterator

Construye un reverse_iterator predeterminado o un reverse_iterator a partir de un iterador subyacente.

6x256702.collapse_all(es-es,VS.120).gifTypedefs

difference_type

Tipo que proporciona la diferencia entre dos reverse_iterators que hacen referencia a elementos del mismo contenedor.

iterator_type

Tipo que proporciona el iterador subyacente para reverse_iterator.

pointer

Tipo que proporciona un puntero a un elemento direccionado por reverse_iterator.

Referencia

Tipo que proporciona una referencia a un elemento direccionado por reverse_iterator.

6x256702.collapse_all(es-es,VS.120).gifFunciones miembro

base

Recupera el iterador subyacente de su reverse_iterator.

6x256702.collapse_all(es-es,VS.120).gifOperadores

operator*

Devuelve el elemento que direcciona un reverse_iterator.

operator+

Agrega un desplazamiento a un iterador y devuelve el nuevo reverse_iterator que direcciona el elemento insertado en la nueva posición de desplazamiento.

operator++

Incrementa el reverse_iterator al elemento siguiente.

operator+=

Agrega un desplazamiento especificado desde un reverse_iterator.

operator-

Resta un desplazamiento a reverse_iterator y devuelve un reverse_iterator que señala el elemento en la posición desplazada.

operator--

Disminuye el reverse_iterator al elemento anterior.

operator-=

Resta un desplazamiento especificado a un reverse_iterator.

operator->

Devuelve un puntero al elemento direccionado por reverse_iterator.

operator[]

Devuelve una referencia a un desplazamiento de elemento con respecto al elemento direccionado por reverse_iterator un número especificado de posiciones.

Encabezado: <iterator>

Espacio de nombres: std

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft