`
yuanlanjun
  • 浏览: 1185235 次
文章分类
社区版块
存档分类
最新评论

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都是迭代器)
例子:
// string::erase

#include <iostream>
#include <string>
using namespace std;
int main ()
{  
    string str ("This is an example phrase.");  
    string::iterator it;  
    // 第(1)种用法  
    str.erase (10,8);  
    cout << str << endl;        // "This is an phrase."  
    // 第(2)种用法  
    it=str.begin()+9;  
    str.erase (it);  
    cout << str << endl;        // "This is a phrase."  
    // 第(3)种用法  
    str.erase (str.begin()+5, str.end()-7);  
    cout << str << endl;        // "This phrase." 
    // 第(4)种用法 
    str.erase(1); //只留下一个元素
    cout<<str<<endl;           //"T" 
    return 0;
}




分享到:
评论

相关推荐

    《C++String深入详解2.0版》PDF

    一、 C++的string的使用 3 1.1 C++ string简介 3 1.2 string的成员 3 1.2.1 append 3 1.2.2 assign 4 1.2.3 at 4 1.2.4 begin 5 1.2.5 c_str 5 1.2.6 capacity 5 1.2.7 clear 6 1.2.8 compare 6 1.2.9 copy 6 1.2.10...

    《深入学习c++string》2.1版

    一、 C++的string的使用 4 1.1 C++ string简介 4 1.2 string的成员 4 1.2.1 append 4 1.2.2 assign 5 1.2.3 at 5 1.2.4 begin 6 1.2.5 c_str 6 1.2.6 capacity 6 1.2.7 clear 7 1.2.8 compare 7 1.2.9 copy 7 1.2.10...

    effective stl stl 技巧

    条款13:尽量使用vector和string来代替动态分配的数组 条款14:使用reserve来避免不必要的重新分配 条款15:小心string实现的多样性 条款16:如何将vector和string的数据传给传统的API 条款17:使用“交换技巧...

    VBSCRIP5 -ASP用法详解

    Erase 语句 重新初始化固定数组的元素并重新分配动态数组的存储空间。 Err 对象 含有关于运行时错误的信息。 Eval 函数 计算并返回表达式的值。 Execute 方法 根据指定的字符串,执行正则表达式的搜索。 Execute...

    Effective STL(中文)

    在删除选项中仔细选择 条款10:注意分配器的协定和约束 条款11:理解自定义分配器的正确用法 条款12:对STL容器线程安全性的期待现实一些 vector和string 条款13:尽量使用vector和string来代替动态...

    jsonhandle:JsonHandle是用于C ++的非常简单的JSON接口。 它支持从char缓冲区以及STL字符串和流进行编码和解码。 键入很像JavaScript中的鸭子键入。 根据使用情况,句柄在类型之间进行透明转换。 旨在有效使用内存并提高性能

    JsonHandle是用于C ++的非常简单的JSON接口。 它支持从char缓冲区以及STL字符串和流进行编码和... 对象:使用[]运算符或at()方法使用char * ot std :: string索引进行访问。 如果使用数字索引,则将返回该索引处的

    数据结构与算法分析

     3.3.2 示例:对表使用erase   3.3.3 const_iterator   3.4 向量的实现   3.5 表的实现   3.6 栈ADT   3.6.1 栈模型   3.6.2 栈的实现   3.6.3 应用   3.7 队列ADT   3.7.1 ...

    数据结构与算法分析C描述第三版

     3.3.2 示例:对表使用erase   3.3.3 const_iterator   3.4 向量的实现   3.5 表的实现   3.6 栈ADT   3.6.1 栈模型   3.6.2 栈的实现   3.6.3 应用   3.7 队列ADT   3.7.1 队列模型 ...

    VBSCRIPT中文手册

    Erase 语句 重新初始化固定数组的元素并重新分配动态数组的存储空间。 Err 对象 含有关于运行时错误的信息。 Eval 函数 计算并返回表达式的值。 Execute 方法 根据指定的字符串,执行正则表达式的搜索。 Execute...

    vb Script参考文档

    Erase 语句 重新初始化固定数组的元素并重新分配动态数组的存储空间。 Err 对象 含有关于运行时错误的信息。 Eval 函数 计算并返回表达式的值。 Execute 方法 根据指定的字符串,执行正则表达式的搜索。 Execute...

    VBScript 语言参考中文手册CHM

    Erase 语句 重新初始化固定数组的元素并重新分配动态数组的存储空间。 Err 对象 含有关于运行时错误的信息。 Eval 函数 计算并返回表达式的值。 Execute 方法 根据指定的字符串,执行正则表达式的搜索。 Execute...

    VBScript 语言参考

    Erase 语句 重新初始化固定数组的元素并重新分配动态数组的存储空间。 Err 对象 含有关于运行时错误的信息。 Eval 函数 计算并返回表达式的值。 Execute 方法 根据指定的字符串,执行正则表达式的搜索。 Execute...

    基于C++开发的射击游戏

    m_BulletList.erase(itei); //删除这个子弹 itei = m_BulletList.begin(); //删除一个结点后,为避免出错下次就从头检查 if (m_BulletList.empty()) break; //若删除结点后子弹vector已空则跳出循环 } 3.子弹...

    C++STL程序员开发指南【可搜索+可编辑】

    2-1-2 string 类....................................................... 48 4849 ..... .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. •. .• .. .. .. .. .. .. .. .. .....

Global site tag (gtag.js) - Google Analytics