Przestrzenie nazw
Warianty
Działania

cpp/string/basic string/erase

Z cppreference.com

Funkcja erase usuwa określone znaki z ciągu.

Deklaracja funkcji i jej przeciążone odmiany:

1. string& erase ( size_t pos = 0, size_t n = npos ); 
2. iterator erase ( iterator position );
3. iterator erase ( iterator first, iterator last );

Pierwszy wariant usuwa daną ilość znaków od pewnego miejsca:

std::string linia =  "nie ma co";
linia.erase(0, 4);
std::cout << linia; //"ma co"

Kolejny powoduje usunięcie jednego znaku wskazując go iteratorem:

std::string linia = "alar ma kota";
linia.erase(linia.begin() + 4);
std::cout << linia; //"ala ma kota"

Ostatni erase usuwa znaki zaczynające się na iteratorze first, a kończące się na last:

std::string linia = "ala ma kota";
std::string::iterator first = linia.begin() + 4;
std::string::iterator last = linia.begin() + 7;
linia.erase(first, last);
std::cout << linia; //"ala kota"