inicio GeNeura cursos

reverse_iterator


Los reverse_iterator se crean aplicando el adaptador reverse_iterator<> a un iterador bidireccional o de acceso aleatorio. El resultado es un iterador que se mueve a través de un contendor en sentido opuesto al habitual.

Existen varios tipos de contenedores que están preparados para trabajar con este tipo de iteradores. Para ello definen los tipos reverse_iterator y const_reverse_iterator. Además deben definir los métodos rbegin() y rend() para poder completar un bucle completo sobre un contenedor.

Para poder iterarar a través de un contenedor en orden inverso podemos escribir:

container::reverse_iterator ri;
for ( ri = container.rbegin(); 
      ri != container.rend(); 
      ri++ )
  cout << *ri << " ";

Ejercicios

  1. Llena un contenedor con valores de 0 a 99 y muestralos en orden inverso utilizando un reverse_iterator.