string中的erase()函数

erase()是对string类型的字符串进行删除元素操作的函数

1、erase(int index) 删除下标从index开始直到字符串结尾的元素

1 string s = "1232157";
2 s.erase(3);
3 cout << s;//123

2、erase(int index,int num) 删除下标从index开始的num个元素

string s = "1234567";
s.erase(3,2);
cout << s;//12367

3、erase(string::iterator it) 删除迭代器指向的元素,函数的返回值是指向删除元素的下一个元素的迭代器

 string::iterator it;
 string s = "1234567";
 it=s.erase(s.begin()+1);
 cout << s << endl;//134567
 cout << *it;//3

4、erase(string::iterator it1,string::iterator it2) 删除[it1,it2)区域的元素,函数的返回值是指向删除元素的下一个元素的迭代器

string::iterator it;
string s = "1234567";
it=s.erase(s.begin()+1,s.end()-1);
cout << s << endl;//17
cout << *it;//7
原文地址:https://www.cnblogs.com/program-ai-cv-ml-se-fighting/p/11921435.html