Freigeben über


basic_string::rend

Gibt ein Iterator zurück, der den Standort anspricht, der dem letzten Element mit invertierten Zeichenfolge.

const_reverse_iterator rend( ) const;
reverse_iterator rend( );

Rückgabewert

Ein Rückiterator mit wahlfreier Zugriff, der den Standort anspricht, der dem letzten Element mit invertierten Zeichenfolge.

Hinweise

rend wird mit invertierten Zeichenfolge verwendet, ebenso Ende mit einer Zeichenfolge verwendet wird.

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

rend kann verwendet werden, um zu testen, ob ein umgekehrter Iterator das Ende der Zeichenfolge eingibt.

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

Beispiel

// basic_string_rend.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.rend ( );
   str1_rIter--;
   cout << "The last 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 = 'o';
   cout << "The last 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 = 'T';

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

Anforderungen

Header: <Zeichenfolge>

Namespace: std

Siehe auch

Referenz

basic_string-Klasse