Compartir a través de


basic_string::erase

quita un elemento o un intervalo de elementos en una cadena de una posición 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
    Un iterador que dirige la posición del primer elemento del intervalo que se borrará.

  • _Last
    Un iterador que dirige la posición una más allá del último elemento del intervalo que se borrará.

  • _It
    Un iterador que dirige la posición del elemento en la cadena que se borrará.

  • _Pos
    El índice del primer carácter de la cadena que se va a quitar.

  • _Count
    El número de elementos que se quitarán si hay tanto en el intervalo de la cadena a partir de _Pos.

Valor devuelto

Para las primeras dos funciones miembro, un iterador que dirige el primer carácter después del último carácter quitado por la función miembro.Para la tercera función miembro, una referencia al objeto string de que se han borrado los elementos.

Comentarios

La tercera función miembro devuelve *this.

Ejemplo

// 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

encabezado: <cadena>

espacio de nombres: std

Vea también

Referencia

basic_string Class