map::rend
Restituisce un iteratore destinato alla posizione che è l'ultimo elemento a mappa annullata.
const_reverse_iterator rend( ) const;
reverse_iterator rend( );
Valore restituito
Un iteratore bidirezionale inverso destinato alla posizione che è l'ultimo elemento a mappa inversa (la posizione che aveva preceduto il primo elemento nella mappa unreversed).
Note
rend viene utilizzato con una mappa invertita come fine viene utilizzato con una mappa.
Se il valore restituito di rend viene assegnato a const_reverse_iterator, l'oggetto mappa non può essere modificato. Se il valore restituito di rend viene assegnato a reverse_iterator, l'oggetto mappa può essere modificato.
rend può essere utilizzato per verificare se a un iteratore inverso raggiunta la fine della mappa.
Non è consigliabile dereferenziare il valore restituito da rend.
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: std