c++中string.erase()函数的用法(转)

erase函数的原型如下:
(1)string& erase ( size_t pos = 0, size_t n = npos );
(2)iterator erase ( iterator position );
(3)iterator erase ( iterator first, iterator last );
也就是说有三种用法:
(1)erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符
(2)erase(position);删除position处的一个字符(position是个string类型的迭代器)
(3)erase(first,last);删除从first到last之间的字符(first和last都是迭代器)
下面给你一个例子:

 

 1 erase函数的原型如下:(1string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator position );(3)iterator erase ( iterator first, iterator last );也就是说有三种用法:(1)erase(pos,n); 删除从pos开始的n个字符,比如erase(0,1)就是删除第一个字符(2)erase(position);删除position处的一个字符(position是个string类型的迭代器)(3)erase(first,last);删除从first到last之间的字符(first和last都是迭代器)下面给你一个例子:#include <iostream>
 2 #include <string>
 3 using namespace std;
 4 
 5 int main ()
 6 {
 7   string str ("This is an example phrase.");
 8   string::iterator it;
 9 
10   // 第(1)种用法
11   str.erase (10,8);
12   cout << str << endl;        // "This is an phrase."
13 
14   // 第(2)种用法
15   it=str.begin()+9;
16   str.erase (it);
17   cout << str << endl;        // "This is a phrase."
18 
19   // 第(3)种用法
20   str.erase (str.begin()+5, str.end()-7);
21   cout << str << endl;        // "This phrase."
22   return 0;
23 }

 

posted @ 2015-03-25 17:24  邀月独斟  阅读(4865)  评论(0编辑  收藏  举报