STL

原创
2014/05/24 00:23
阅读数 61

STL六大组件

容器(Container)

算法(Algorithm)

迭代器(Iterator)

函数对象(Function object)

适配器(Adaptor)

空间配置器(allocator)


为了方便的存储数据,设计了容器。为了方便的遍历、查找、替换容器中的元素,设计了算法。为了方便的让容器和算法独立工作,设计了两者之间的沟通桥梁迭代。为了统一分配和控制容器中的内存,设计了配置器。为了更好的给算法传入参数,设计了函数对象。为了更好的扩展STL现有接口,设计了适配器。


头文件说明

头文件名

内容

<algorithm>

<numeric>定义了STL通用算法,是所有STL头文件中最大的一个,它是由一大堆模版函数组成的,可以认为每个函数在很大程度上都是独立的,其中常用到的功能范围涉及到比较、交换、查找、遍历操作、复制、修改、移除、反转、排序、合并

<numeric>

<algorithm>定义了STL通用算法,体积较小,只包括几个在序列上面进行简单数学运算的模板函数,包括加法和乘法在序列上的一些操作

<deque>

双队列,双向开口的连续线性存储空间

<vector>

向量,一块连续的线性存储空间

<list>

双向循环链表

<stack>

后进先出数据结构

<queue>

包括queuepriority_queue. queue先进先出数据结构, priority_queue按照权值决定出列顺序

<set>

setmultiset的定义。set由节点组成的红黑树,每个节点都包含着一个元素,所有元素按照值进行自动排列,不能有重复的键(setkey=value),multiset是支持重复keyset

<map>

mapmultimap定义. map 是由{键,值}对组成的集合 multimap支持重复键值

<functional>

通用函数对象定义

<iterator>

迭代器定义

<memory>

为容器中的元素分配存储空间,同时也为某些算法执行期间产生的临时对象提供机制,主要是智能指针auto_ptr的定义和全局临时内存处理函数的定义

<utility>

包括了贯穿使用在STL中的几个模板的声明,定义了pair和基本的iterator概念


https://www.sgi.com/tech/stl/

http://tool.oschina.net/apidocs/apidoc?api=cpp%2Fen%2Fcpp.html

http://wenku.baidu.com/view/9e1b8bc00c22590102029d1b.html

http://blog.csdn.net/morewindows/article/category/923923

http://www.cplusplus.com/reference/stack/stack/stack/

http://blog.csdn.net/byxdaz/article/details/4633826http://blog.csdn.net/byxdaz/article/details/4633826

http://blog.csdn.net/byxdaz/article/details/4633826



展开阅读全文
打赏
0
4 收藏
分享
加载中
更多评论
打赏
0 评论
4 收藏
0
分享
返回顶部
顶部