Partager via


basic_string::rbegin

Retourne un itérateur au premier élément d'une chaîne inversée.

const_reverse_iterator rbegin( ) const;
reverse_iterator rbegin( );

Valeur de retour

Retourne un itérateur d'accès aléatoire au premier élément dans une chaîne inversée, adressage qui sera le dernier élément dans la chaîne inversée correspondante.

Notes

rbegin est utilisé avec une chaîne inversée comme begin est utilisé avec une chaîne.

Si la valeur de retour de rbegin est assignée à const_reverse_iterator, l'objet de type chaîne ne peut être modifié. Si la valeur de retour de rbegin est assignée à reverse_iterator, l'objet de type liste ne peut être modifié.

rbegin peut être utilisée pour initialiser une itération via une chaîne inversée.

Exemple

// basic_string_rbegin.cpp
// compile with: /EHsc
#include <string>
#include <iostream>

int main( )
{
   using namespace std;
   string str1 ( "Able was I ere I saw Elba" ), str2;
   basic_string <char>::reverse_iterator str_rIter, str1_rIter, str2_rIter;
   basic_string <char>::const_reverse_iterator str1_rcIter;

   str1_rIter = str1.rbegin ( );
   // str1_rIter--;
   cout << "The first character-letter of the reversed string str1 is: "
        << *str1_rIter << endl;
   cout << "The full reversed string str1 is:\n ";
   for ( str_rIter = str1.rbegin( ); str_rIter != str1.rend( ); str_rIter++ )
      cout << *str_rIter;
   cout << endl;

   // The dereferenced iterator can be used to modify a character
    *str1_rIter = 'A';
   cout << "The first character-letter of the modified str1 is now: "
        << *str1_rIter << endl;
   cout << "The full modified reversed string str1 is now:\n ";
   for ( str_rIter = str1.rbegin( ); str_rIter != str1.rend( ); str_rIter++ )
      cout << *str_rIter;
   cout << endl;

   // The following line would be an error because iterator is const
   // *str1_rcIter = 'A';

   // For an empty string, begin is equivalent to end
   if ( str2.rbegin( ) == str2.rend ( ) )
      cout << "The string str2 is empty." << endl;
   else
      cout << "The stringstr2  is not empty." << endl;
}
  

Configuration requise

En-tête : <chaîne>

Espace de noms : std

Voir aussi

Référence

basic_string, classe