string& erase ( size_t pos = 0, size_t n = npos );
Erases a sequence of n characters starting at position pos. Notice that both parameters are optional: with only one argument, the function deletes everything from position pos forwards, and with no arguments, the function deletes the entire string, like member clear.
iterator erase ( iterator position );
Erases the character referred by the iterator position. Only one character is affected.
iterator erase ( iterator first, iterator last );
Erases all the characters between first and last.
Parameters
pos
Position within the string of the first character to be erased.
If the position passed is past the end of the string, an out_of_range exception is thrown.
n
Amount of characters to be removed. It may remove less characters if the end of the string is reached before the n characters have been erased. The default value of npos indicates that all the characters until the end of the string should be erased.
size_t is an unsigned integral type.
position
Iterator of the member type string::iterator referring to a signle character in the string to be removed.
first
Iterator of the member type string::iterator referring to the first character in a sequence of characters within the string to be erased.
last
Iterator of the member type string::iterator referring to the last character in the sequence of characters within the string to be erased.
I seen that, but I was curious if there was a way to do what erase does without using erase. More or less an alternative method of performing the same task.