资讯

展开

STL库简述

作者:快盘下载 人气:

STL简述

STL库包含六个大类:

容器库算法库迭代器库配置器(allocator)适配器(adaptor)仿函数(函数对象)

其中后四个类主要为前两个类服务。 其中使用频率最高的就是容器库,迭代器库,算法库。容器库为我们提供了存储数据的数据结构,算法库则是我们操作数据结构的算法,迭代器库作为容器库和算法库的黏合剂。

容器库

容器库整体分为 序列型容器 , 关联型容器 , 容器适配器。

1.序列型容器

主要包括 list,vector,deque, array。 以vector作为学习实例: STL 容器(一) vector

适配器容器 stack,queue,priority_queue 也属于序列型容器,叫它们适配器容器的原因是这些容器的底层是采用vector,deque等现有容器的功能,如stack和queue的底层是采用deque,而priority_queue则是采用vector。 学习实例: STL 适配器adapter

2.关联型容器

主要包括 map,unordered_map,set,unordered_set 这些key-value存储结构的容器或者以集合形式存在的容器。 学习实例: STL 容器(二) set,unordered_set STL 容器(三) map和unordered_map

算法库

算法库整体包括 algorithm库。 algorithm则包括了我们常用的算法; 学习实例: STL 算法库algorithm

迭代器库

迭代器库整体包括 iterator 库。 迭代器库作为算法库与容器库之间的黏合剂,起到了非常重要的作用。 学习实例: STL 迭代器(一) 迭代器操作详解 STL 迭代器(二) 迭代器失效情况分析

适配器(adaptor)

适配器分为 容器适配器 和 函数适配器,功能在于将两个不相同的模块结合到一起。 学习实例: STL 适配器adapter

配置器(allocator)

配置器的功能在于定义类中内存的分配,正常情况下程序员是不会自定义内存的分类的。 学习实例: STL 配置器allocator 实现vector类

仿函数(函数对象)

实质上也就是将一个类的使用近似看成函数的使用,也就是在类内部使用 operator() 。 学习实例: STL 仿函数(一) bind函数回调 STL仿函数(二) bind1st,bind2nd

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/183310.html原文链接:https://javaforall.cn

加载全部内容

相关教程
猜你喜欢
用户评论
快盘暂不提供评论功能!