Freigeben über


multimap::rend

Gibt ein Iterator zurück, der den Standort anspricht, der das letzte Element einer umgekehrten Multimap folgt.

const_reverse_iterator rend( ) const; 
reverse_iterator rend( );

Rückgabewert

Ein umgekehrter bidirektionalem Iterator, der den Standort anspricht, der das letzte Element einer umgekehrten Multimap folgt (der Speicherort, der das erste Element in der keine umgekehrten Multimap vorangestellt war).

Hinweise

rend ist einer umgekehrten Multimap verwendet, wie die Ende mit einer Multimap verwendet wird.

Wenn const_reverse_iterator der Rückgabewert von rend zugewiesen ist, kann das multimap-Objekt nicht geändert werden. Wenn reverse_iterator der Rückgabewert von rend zugewiesen ist, kann das multimap-Objekt geändert werden.

rend kann verwendet werden, um zu testen, ob ein umgekehrter Iterator das Ende ihrer Multimaps erreicht hat.

Der von rend zurückgegebene Wert darf nicht dereferenziert werden.

Beispiel

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

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

   multimap <int, int> :: iterator m1_Iter;
   multimap <int, int> :: reverse_iterator m1_rIter;
   multimap <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 multimap m1 is "
        << m1_rIter -> first << "." << endl;

   // begin can be used to start an iteration 
   // throught a multimap in a forward order
   cout << "The multimap 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 
   // throught a multimap in a reverse order
   cout << "The reversed multimap is: ";
   for ( m1_rIter = m1.rbegin( ) ; m1_rIter != m1.rend( ); m1_rIter++)
      cout << m1_rIter -> first << " ";
      cout << "." << endl;

   // A multimap 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 multimap is "
        << m1_rIter -> first << "." << endl;
}
  

Anforderungen

Header: <map>

Namespace: std

Siehe auch

Referenz

multimap-Klasse

Standardvorlagenbibliothek