basic_string::erase
Supprime un élément ou une plage d'éléments dans une chaîne d'un emplacement spécifié.
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 adressage la position du premier élément dans la plage à effacer._Last
Un itérateur adressage la position une après le dernier élément dans la plage à effacer._It
Un itérateur adressage la position de l'élément dans la chaîne à effacer._Pos
Index du premier caractère de la chaîne à supprimer._Count
Nombre d'éléments qui seront supprimés s'il y a autant de la plage de début de chaîne avec les _Pos.
Valeur de retour
Pour les deux premières fonctions de membre, un itérateur adressage le premier caractère après le dernier caractère supprimées par la fonction membre. Pour la troisième fonction membre, une référence à l'objet de chaîne à partir duquel les éléments ont été effacés.
Notes
La troisième membre fonction 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 : <chaîne>
Espace de noms : std