利用Iterator和erase
这里我们利用string的一个函数erase(iterator)来删除指定位置上的字符,这里的iterator迭代器可以通过string.begin()获得该字符串的首迭代器,再加上不同的数值来进行删除操作。
string s = "abcdefg";
int i = 3;
string::iterator itr = s.begin();
itr+=i;
s.erase(itr);
s.erase(itr);
cout<<s;
这里我们是想删除"de",由于我们获得了首迭代器并且加了数值,此时删除的是"d",如果再想删除“e”,我们不需要再进行任何数值的增添,因为此时"e"的位置就在刚刚"d"的位置上,只需要再次进行erase()即可。