basic_string::erase
Odebere prvek nebo rozsah prvků v řetězci od určené pozice.
iterator erase(
iterator _First,
iterator _Last
);
iterator erase(
iterator _It
);
basic_string<CharType, Traits, Allocator>& erase(
size_type _Pos = 0,
size_type _Count = npos
);
Parametry
_First
Iterace pozici první prvek v rozsahu adres jsou vymazány._Last
Iterace pozici jeden za poslední prvek v rozsahu adres jsou vymazány._It
Iterace adresování umístění prvku v řetězci jsou vymazány._Pos
Index prvního znaku v řetězci, který má být odebrán._Count
Počet prvků, které budou odebrány, pokud nejsou tolik v rozsahu řetězec začínající _Pos.
Vrácená hodnota
Pro první dvě členské funkce, za poslední znak odebrány členské funkce adresování první znak iterace.Pro třetí členskou funkci, odkaz na objekt řetězec, ze kterého byly vymazány prvky.
Poznámky
Třetí členská funkce * to.
Příklad
// 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;
}
Požadavky
Hlavička: <string>
Obor názvů: std