hash_map::rbegin
Notes
Cette API est obsolète.L'alternative est unordered_map, classe.
Retourne un itérateur qui traite le premier élément d'une hash_map inversée.
const_reverse_iterator rbegin( ) const;
reverse_iterator rbegin( );
Valeur de retour
Un itérateur bidirectionnel inverse adressant le premier élément dans une hash_map inversée ou adressant ce qui avait été le dernier élément de la hash_map non inversée.
Notes
rbegin est utilisé avec un hash_map inversé comme begin est utilisé avec une hash_map.
Si la valeur de retour rbegin est affectée à un const_reverse_iterator, l'objet de hash_map ne peut pas être modifié. Si la valeur de retour de rbegin est assignée à un itérateur inversé, il est impossible de modifier l'objet du hash_map.
rbegin peut être utilisé pour itérer à reculons au sein d'une hash_map.
Dans Visual C++ .NET 2003, les membres des fichiers d'en-tête <hash_map> et de <hash_set> ne sont plus dans l'espace de noms standard, mais ont été plutôt déplacés dans l'espace de noms de stdext. Pour plus d'informations, consultez The stdext Namespace.
Exemple
// hash_map_rbegin.cpp
// compile with: /EHsc
#include <hash_map>
#include <iostream>
int main( )
{
using namespace std;
using namespace stdext;
hash_map <int, int> hm1;
hash_map <int, int> :: iterator hm1_Iter;
hash_map <int, int> :: reverse_iterator hm1_rIter;
hash_map <int, int> :: const_reverse_iterator hm1_crIter;
typedef pair <int, int> Int_Pair;
hm1.insert ( Int_Pair ( 1, 10 ) );
hm1.insert ( Int_Pair ( 2, 20 ) );
hm1.insert ( Int_Pair ( 3, 30 ) );
hm1_rIter = hm1.rbegin( );
cout << "The first element of the reversed hash_map hm1 is "
<< hm1_rIter -> first << "." << endl;
// begin can be used to start an iteration
// through a hash_map in a forward order
cout << "The hash_map is: ";
for ( hm1_Iter = hm1.begin( ) ; hm1_Iter != hm1.end( ); hm1_Iter++)
cout << hm1_Iter -> first << " ";
cout << "." << endl;
// rbegin can be used to start an iteration
// through a hash_map in a reverse order
cout << "The reversed hash_map is: ";
for ( hm1_rIter = hm1.rbegin( ) ; hm1_rIter != hm1.rend( ); hm1_rIter++)
cout << hm1_rIter -> first << " ";
cout << "." << endl;
// A hash_map element can be erased by dereferencing to its key
hm1_rIter = hm1.rbegin( );
hm1.erase ( hm1_rIter -> first );
hm1_rIter = hm1.rbegin( );
cout << "After the erasure, the first element "
<< "in the reversed hash_map is "
<< hm1_rIter -> first << "." << endl;
}
Configuration requise
En-tête: <hash_map>
Espace de noms : stdext