zoukankan      html  css  js  c++  java
  • 【C++百科】STL(Standard Template Library) 标准模板库简介

    STL简介

    STL是Standard Template Library的简称,中文名标准模板库,惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。
    从根本上说,STL是一些“容器”的集合,这些“容器”有list,vector,set,map等,STL也是算法和其他一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。STL的目的是标准化组件,这样就不用重新开发,可以使用现成的组件。STL现在是C++的一部分,因此不用安装额外的库文件。

    STL的组成

    容器(containers)
    迭代器(iterators)
    空间配置器(allocator)
    配接器(adapters)
    算法(algorithms)
    仿函数(functions)

    容器分类

    序列式容器
    数组(array);
    向量(vector):连续存储的元素;
    列表(list):有节点组成的双向链表;
    双端队列(deque):连续存储的指向不同元素的指针所组成的数组。
    适配器(在一般序列容器的基础上提供了不同的功能,用序列容器实现的新容器)
    栈(stack);
    队列(queue);
    优先队列(priority_queue):元素的次序由作用于所存储的值对上的某种谓词决定的一种队列。
    关联式容器
    集合(set):由节点组成的红黑树,没有两个不同的元素能够拥有相同的次序;
    多重集合(multiset):允许存在两个次序相等的元素的集合;
    映射(map):由{键,值}对组成的集合;
    多重映射(multimap):允许键对由相等的次序的映射

    迭代器

    几乎STL提供的所有算法都是通过迭代器存取元素序列进行工作的,每一个容器都定义了其本身所专有的迭代器,用以存取容器中的元素。

  • 相关阅读:
    hiho #1502:最大子矩阵(元素和不超过k)
    IPC 进程间通信方式——消息队列
    IPC 进程间通信方式——共享内存
    IPC 进程间通信方式——管道
    hiho #1032: 最长回文子串
    TCP超时与重传机制与拥塞避免
    C++关于构造函数 和 析构函数 能否抛出异常的讨论
    基于TCP的客户端、服务器端socket编程
    hiho #1043 : 完全背包
    hiho #1485 : hiho字符串(滑动窗口)
  • 原文地址:https://www.cnblogs.com/SchrodingerDoggy/p/14234476.html
Copyright © 2011-2022 走看看