Condividi tramite


map::rend

Restituisce un iteratore destinato alla posizione che è l'ultimo elemento a mapping inverso.

const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Valore restituito

Un iteratore bidirezionale inverso destinato alla posizione che è l'ultimo elemento a mapping inverso (la posizione che aveva precedente il primo elemento nella mappa unreversed).

Note

rend viene utilizzato con un mapping inverso come fine viene utilizzato con un mapping.

Se il valore restituito rend viene assegnato a const_reverse_iterator, l'oggetto di mapping non può essere modificato.Se il valore restituito rend viene assegnato a reverse_iterator, l'oggetto di mapping può essere modificato.

rend può essere utilizzato per verificare se un iteratore inverso raggiunge la fine del mapping.

Il valore restituito da rend non è possibile dereferenziare.

Esempio

// map_rend.cpp
// compile with: /EHsc
#include <map>
#include <iostream>

int main( )
{
   using namespace std;
   map <int, int> m1;

   map <int, int> :: iterator m1_Iter;
   map <int, int> :: reverse_iterator m1_rIter;
   map <int, int> :: const_reverse_iterator m1_crIter;
   typedef pair <int, int> Int_Pair;

   m1.insert ( Int_Pair ( 1, 10 ) );
   m1.insert ( Int_Pair ( 2, 20 ) );
   m1.insert ( Int_Pair ( 3, 30 ) );

   m1_rIter = m1.rend( );
   m1_rIter--;
   cout << "The last element of the reversed map m1 is "
        << m1_rIter -> first << "." << endl;

   // begin can be used to start an iteration 
   // through a map in a forward order
   cout << "The map is: ";
   for ( m1_Iter = m1.begin( ) ; m1_Iter != m1.end( ); m1_Iter++)
      cout << m1_Iter -> first << " ";
      cout << "." << endl;

   // rbegin can be used to start an iteration 
   // through a map in a reverse order
   cout << "The reversed map is: ";
   for ( m1_rIter = m1.rbegin( ) ; m1_rIter != m1.rend( ); m1_rIter++)
      cout << m1_rIter -> first << " ";
      cout << "." << endl;

   // A map element can be erased by dereferencing to its key 
   m1_rIter = --m1.rend( );
   m1.erase ( m1_rIter -> first );

   m1_rIter = m1.rend( );
   m1_rIter--;
   cout << "After the erasure, the last element "
        << "in the reversed map is "
        << m1_rIter -> first << "." << endl;
}
  
  
  
  

Requisiti

intestazione: <map>

Spazio dei nomi: deviazione standard

Vedere anche

Riferimenti

map Class

Libreria di modelli standard