basic_string::erase
Supprime un élément ou une plage d'éléments dans une chaîne d'une position spécifiée.
iterator erase(
iterator _First,
iterator _Last
);
iterator erase(
iterator _It
);
basic_string<CharType, Traits, Allocator>& erase(
size_type _Pos = 0,
size_type _Count = npos
);
Paramètres
_First
Un itérateur adressant la position du premier élément dans la plage à supprimer._Last
Un itérateur adressant une position au delà de le dernier élément dans la plage à supprimer._It
Un itérateur adressant la position de l'élément dans la chaîne à supprimer._Pos
Index du premier caractère de la chaîne à supprimer._Count
Le nombre d'éléments qui seront supprimés s'il existe un nombre illimité de la plage du début de chaîne avec les _Pos.
Valeur de retour
Pour les deux premières fonctions membres, un itérateur adressant le premier caractère après le dernier caractère a supprimé par la fonction membre.Pour la troisième fonction membre, une référence à l'objet chaîne à partir duquel les éléments supprimés.
Notes
La troisième fonction membre retourne *this.
Exemple
// basic_string_erase.cpp
// compile with: /EHsc
#include <string>
#include <iostream>
int main( )
{
using namespace std;
// The 1st member function using a range demarcated
// by iterators
string str1 ( "Hello world" );
basic_string <char>::iterator str1_Iter;
cout << "The original string object str1 is: "
<< str1 << "." << endl;
str1_Iter = str1.erase ( str1.begin ( ) + 3 , str1.end ( ) - 1 );
cout << "The first element after those removed is: "
<< *str1_Iter << "." << endl;
cout << "The modified string object str1 is: " << str1
<< "." << endl << endl;
// The 2nd member function erasing a char pointed to
// by an iterator
string str2 ( "Hello World" );
basic_string <char>::iterator str2_Iter;
cout << "The original string object str2 is: " << str2
<< "." << endl;
str2_Iter = str2.erase ( str2.begin ( ) + 5 );
cout << "The first element after those removed is: "
<< *str2_Iter << "." << endl;
cout << "The modified string object str2 is: " << str2
<< "." << endl << endl;
// The 3rd member function erasing a number of chars
// after a char
string str3 ( "Hello computer" ), str3m;
basic_string <char>::iterator str3_Iter;
cout << "The original string object str3 is: "
<< str3 << "." << endl;
str3m = str3.erase ( 6 , 8 );
cout << "The modified string object str3m is: "
<< str3m << "." << endl;
}
Configuration requise
en-tête : <string>
l'espace de noms : DST