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

 

posted @ 2019-11-24 10:10  lucky99  阅读(4347)  评论(0编辑  收藏  举报