美文网首页
GeekBand C++第五周

GeekBand C++第五周

作者: 文字工作者377 | 来源:发表于2016-08-22 08:48 被阅读0次

    STL 对定义的通用容器分三类:顺序性容器、关联式容器和容器适配器。

    标准STL顺序容器:vector、deque、list、forward_list、array和string.

    标准STL关联容器:set、multiset、map和multimap。

    标准STL容器适配器:stack、queue、priority_queue。

    每个容器定义在一个头文件中文件名与类型名相同。

    vector

    可变大小数组。支持快速随机访问。在尾部之外的位置插入或删除元素可能很慢。

    deque

    双端队列。支持快速随机访问。在头尾位置插入或删除速度很快。

    list

    双向链表。支持双向顺序访问。任何位置插入删除操作速度都很快。

    forward_list

    单向链表。没有.size操作。其迭代器不支持--运算符。操作特殊

    array

    固定大小数组。但支持整个array的拷贝或对象赋值操作。

    string

    保存字符。随机访问快。尾部插入或删除快。

    操作

    push_back

    除array和forward_list。将一个元素加入到一个容器的尾部。

    push_front

    list,forwad_list和deque支持。将元素插入到容器头部

    insert

    都支持。将元素插入到迭代器所指定位置之前。

    .back

    返回尾元素的引用。

    .front

    返回首元素的引用。

    删除(array无)  删除元素可能会导致迭代器失效[311,315]

    pop_front

    删除首元素,返回void

    pop_back

    删除尾元素,返回void

    erase(p)

    删除迭代器p所指定的元素,返回指向被删元素之后元素的迭代器

    clear

    删除所有元素

    泛型算法

    大多数定义在头文件algorithm中 部分在numeric

    迭代器使算法不依赖容器,但算法依赖于元素类型的操作

    算法不会执行容器操作,迭代器可以完成向容器添加元素。

    相关文章

      网友评论

          本文标题:GeekBand C++第五周

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