美文网首页
标准模板库STL

标准模板库STL

作者: 龙遁流 | 来源:发表于2016-12-21 00:15 被阅读0次

    容器:管理特定类型的对象的集合。

    迭代器:迭代对象集合的元素。屏蔽了底层容器的实现。

    算法:操作对象集合的元素,查找,排序,修改等。算法不直接操作容器,通过迭代器操作。

    STL基于数据和操作分离的原则,容器管理数据,算法操作数据,两者通过迭代器结合。

    STL组件 容器

    顺序容器

    array,vector,deque,list,forward_list(一般用数组或链表实现)

    关联容器

    有序的,set,multiset,map,multimap,在逻辑上可认为是顺序容器,一般用排序二叉树实现

    无序(关联)容器

    unsordered_set,unordered_multiset,unsortered_map,unsortered_multimap,一般用hash表实现

    vector

    动态数组,支持随机访问,在尾后添加删除元素较快,在中间添加和删除元素较慢,可能需要改变容器的容量。

    size() is provided for any container class except singly linked lists (class forward_list).

    deque(读作check)

    双端队列,可在两端增长的动态数组,在首尾插入比较快,在中间插入比较慢。

    array

    固定大小的数组,只可改变元素的值,在创建的时候指定大小。支持随机访问。默认以类型的默认构造函数出初始化,内置类型初始值未定义。创建时需指定大小,作为类型的一部分。

    list

    双向,每个元素保存前驱和后继的链接,插入和删除较快,不支持随机访问。

    forward_list

    单向,每个元素只有后继的链接,不支持push_back,size。

    相关文章

      网友评论

          本文标题:标准模板库STL

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