美文网首页c++ primer 5th
第9章 顺序容器

第9章 顺序容器

作者: 菜鸡也会飞 | 来源:发表于2017-06-20 23:16 被阅读0次

三、 顺序容器操作

  1. 删除元素


    image.png
  2. 容器操作可能使迭代器失效
  • 添加元素
    • vector/string:若存储空间重新分配→指针/引用/迭代器均失效;若没有重新分配→插入位置之后的指针/引用/迭代器/失效
    • deque:插入到首尾位置之外→指针/引用/迭代器均失效;首位位置插入→迭代器失效,指向存在元素的引用和指针不失效。
    • list/forward_list:指针/引用/迭代器均有效
  • 删除元素→指向被删除元素的指针/引用/迭代器均失效
    • vector/string:指向被删除元素之前→指针/引用/迭代器均失效;指向被删除元素之后→指针/引用/迭代器均失效
    • deque:删除到首尾位置之外→指针/引用/迭代器均失效;删除尾元素→尾后迭代器失效,其他迭代器、引用和指针不失效;删除首元素→其他迭代器、引用和指针不受影响
    • list/forward_list:指向其他位置的指针/引用/迭代器仍然有效
  • 使用失效的迭代器、指针、引用是严重错误管理迭代器
  • 编写改变容器的循环程序→每次循环都更新迭代器、引用和指针
  • 不要保存.end()返回的迭代器,而是每次调用.end()

五、 额外的string操作

  • 数值转换
  • to_string(val):返回val的string表示,val可以是任何算数类型
  • stoi(s,p,b):返回s的起始子串(表示整数内容)的数值,返回值类型为int。b表示转换所用基数,默认为10。p是size_t指针,用来保存s中第一个非数值字符的下标,p默认为0。类似的还有stol()、stoul()。。。
  • stof(s,p) :返回值类型为浮点数
  • string搜索操作
  • s.find(args),查找s中args第一次出现的位置
  • s.rfind(args),查找s中args最后一次出现的位置
  • 修改string的操作
  • s.insert(pos,args)
  • s.erase(pos,len)
  • s.assign(args)
  • s.append(args)
  • s.replace(range,args)

相关文章

  • 第九章 摘录

    第9章 顺序容器 第9章是第3章的扩展。 9.1 顺序容器概述 forward_list和array是新c++标准...

  • C++primer_容器

    九.顺序容器 顺序容器的顺序表示元素插入的顺序 C++标准库容器提供了顺序访问元素的能力,但是不同的容器在以下的操...

  • C++boolan part3_week1

    C++容器的介绍及使用 C++中的容器大致可以分为两个大类:顺序容器和关联容器。顺序容器中有包含有顺序容器适配器。...

  • (十四)C++篇-关联容器map和set

    关联容器和顺序容器的本质差别在于:关联容器通过键(key)存储和读取元素,而顺序容器则通过元素在容器中的位置顺序存...

  • 第9章:顺序容器

    #1.顺序容器概述 #2.容器库概览迭代器容器类型成员begin和end成员容器定义和初始化赋值和swap容器大小...

  • 第9章 顺序容器

    三、 顺序容器操作 删除元素image.png 容器操作可能使迭代器失效 添加元素vector/string:若存...

  • 第9章 顺序容器

    9.2 库容器概览 9.2.2 容器类型成员 容器的额外操作:iterator表示迭代器类型,size_type无...

  • [C++ Primer Note8] 顺序容器

    所谓的顺序容器即元素在顺序容器中的顺序与其加入容器时的位置相对应。标准库还定义了几种关联容器,关联容器中元素的位置...

  • 顺序容器

    所有容器类都有共享公共的接口,不同容器按照不同方式对其进行扩展。每种容器都提供了不同性能和功能的权衡 顺序容器:在...

  • 顺序容器

    分类 vector:可变大小数组。支持快速随机访问。在尾部之外的位置插入或删除元素可能很慢。deque:双端队列。...

网友评论

    本文标题:第9章 顺序容器

    本文链接:https://www.haomeiwen.com/subject/uvgaqxtx.html