Compartir a través de


set::rend

Devuelve un iterador que dirige la ubicación que funciona correctamente el último elemento en un conjunto invertido.

const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Valor devuelto

Un iterador bidireccional inversa que dirige la ubicación que funciona correctamente el último elemento en un conjunto invertido (la ubicación que había precedido el primer elemento del conjunto unreversed).

Comentarios

rend se utiliza con un conjunto invertido igual que final se utiliza con un conjunto.

Si el valor devuelto de rend se asigna a const_reverse_iterator, el objeto determinado no puede modificarse. Si el valor devuelto de rend se asigna a reverse_iterator, el objeto determinado puede modificarse. El valor devuelto por rend no se debe desreferenciar.

rend se puede utilizar para probar a si un iterador inverso ha llegado al final del conjunto.

Ejemplo

// set_rend.cpp
// compile with: /EHsc
#include <set>
#include <iostream>

int main() {
   using namespace std;   
   set <int> s1;
   set <int>::iterator s1_Iter;
   set <int>::reverse_iterator s1_rIter;
   set <int>::const_reverse_iterator s1_crIter;

   s1.insert( 10 );
   s1.insert( 20 );
   s1.insert( 30 );

   s1_rIter = s1.rend( );
   s1_rIter--;
   cout << "The last element in the reversed set is "
        << *s1_rIter << "." << endl;

   // end can be used to terminate an iteration 
   // throught a set in a forward order
   cout << "The set is: ";
   for ( s1_Iter = s1.begin( ) ; s1_Iter != s1.end( ); s1_Iter++ )
      cout << *s1_Iter << " ";
   cout << "." << endl;

   // rend can be used to terminate an iteration 
   // throught a set in a reverse order
   cout << "The reversed set is: ";
   for ( s1_rIter = s1.rbegin( ) ; s1_rIter != s1.rend( ); s1_rIter++ )
      cout << *s1_rIter << " ";
   cout << "." << endl;

   s1_rIter = s1.rend( );
   s1_rIter--;
   s1.erase ( *s1_rIter );

   s1_rIter = s1.rend( );
   --s1_rIter;
   cout << "After the erasure, the last element in the "
        << "reversed set is " << *s1_rIter << "." << endl;
}

Resultados

The last element in the reversed set is 10.
The set is: 10 20 30 .
The reversed set is: 30 20 10 .
After the erasure, the last element in the reversed set is 20.

Requisitos

Encabezado: <set>

Espacio de nombres: std

Vea también

Referencia

set (Clase)

set::rbegin y set::rend

Biblioteca de plantillas estándar