basic_string::erase
Remove um elemento ou um intervalo de elementos em uma cadeia de caracteres de uma posição especificada.
iterator erase(
iterator _First,
iterator _Last
);
iterator erase(
iterator _It
);
basic_string<CharType, Traits, Allocator>& erase(
size_type _Pos = 0,
size_type _Count = npos
);
Parâmetros
_First
Um iterador que trata a posição do primeiro elemento no intervalo ser apagado._Last
Um iterador que trata a posição um passado o último elemento no intervalo ser apagado._It
Um iterador que trata a posição do elemento na cadeia de caracteres ser apagado._Pos
O índice do primeiro caractere na cadeia de caracteres a ser removido._Count
O número de elementos que serão removidos se há pouco como no intervalo de início da cadeia de caracteres com _Pos.
Valor de retorno
Para as primeiras duas funções de membro, um iterador que trata o primeiro caractere após o último caractere removeu pela função de membro.Para a terceira função de membro, uma referência ao objeto de cadeia de caracteres dos elementos que foram apagada.
Comentários
a terceira função de membro retorna *this.
Exemplo
// 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;
}
Requisitos
Cabeçalho: <string>
namespace: STD