basic_string::end
Gibt einen Iterator zurück, der den Speicherort adressiert, der dem letzten Element einer Zeichenfolge nachfolgt.
const_iterator end( ) const;
iterator end( );
Rückgabewert
Gibt ein Iterator mit wahlfreier Zugriff zurück, der den Standort anspricht, der das letzte Element einer Zeichenfolge.
Hinweise
end wird häufig verwendet, um zu testen, ob ein Iterator das Ende der Zeichenfolge eingibt. Der Wert, der von end zurückgegeben wird, darf nicht dereferenziert werden.
Wenn const_iterator der Rückgabewert von end zugewiesen ist, kann das Zeichenfolgenobjekt nicht geändert werden. Wenn Iterator der Rückgabewert von end zugewiesen ist, kann das Zeichenfolgenobjekt geändert werden.
Beispiel
// 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;
}
Anforderungen
Header: <Zeichenfolge>
Namespace: std