Partager via


basic_string::end

Retourne un itérateur concernant l'emplacement réussissant le dernier élément d'une chaîne.

const_iterator end( ) const;
iterator end( );

Valeur de retour

Retourne un itérateur l'accès aléatoire qui adresse l'emplacement réussissant le dernier élément d'une chaîne.

Notes

end est souvent utilisé pour tester si un itérateur a atteint la fin de la chaîne. La valeur retournée par end ne doit pas être déréférencée.

Si la valeur de retour de end est affectée à const_iterator, l'objet String ne peut pas être modifié. Si la valeur de retour de end est affectée à iterator, l'objet String peut être modifié.

Exemple

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

int main( ) 
{
   using namespace std;
   string str1 ( "No way out." ), str2;
   basic_string <char>::iterator str_Iter, str1_Iter, str2_Iter;
   basic_string <char>::const_iterator str1_cIter;

   str1_Iter = str1.end ( );
   str1_Iter--;
   str1_Iter--;
   cout << "The last character-letter of the string str1 is: " << *str1_Iter << endl;
   cout << "The full orginal string str1 is: " << str1 << endl;

   // end used to test when an iterator has reached the end of its string
   cout << "The string is now: ";
   for ( str_Iter = str1.begin( ); str_Iter != str1.end( ); str_Iter++ )
      cout << *str_Iter;
   cout << endl;

   // The dereferenced iterator can be used to modify a character
    *str1_Iter = 'T';
   cout << "The last character-letter of the modified str1 is now: "
        << *str1_Iter << endl;
   cout << "The modified string str1 is now: " << str1 << endl;

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

   // For an empty string, end is equivalent to begin
   if ( str2.begin( ) == str2.end ( ) )
      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