JavaShuo
栏目
标签
STL六大组件
时间 2019-12-14
标签
stl
六大
组件
繁體版
原文
原文链接
标准模板库(STL):
STL库是用模板(template)写出来的,模板是STL库的基础。STL大体由如下几部分组成:
——容器(container)
——迭代器(iterator)
——容器适配器(Adapter)
——算法(algorithm)
——函数对象(functor)
——配置器(allocator) //底层实现
容器、迭代器、容器适配器
都是用
类模板
实现的,
迭代器
用于遍历容器中的每个元素,
算法
用于操做数据。
(使用了C++11新特性,编译的时候要加上:
-std=c++11
)
容器:
STL运用模板类库机制,为数据存储,查找和其余操做提供了一整套方案,大大提升了程序的正确性。
不只如此,类库对经常使用的不少操做进行了优化处理,大大提升了程序的效率。
容器是可容纳一些数据的类模板,STL中有
vector、list、deque、(序列式容器)set/multiset、map/multimap(关联式容器)
等容器。
迭代器:
在有的专业书籍中,迭代器也称
游标
,能够将迭代器初步理解为
广义指针
,迭代器和指针功能很像,迭代器是经过重载一元的”*”和”->”来从容器中
间接地
返回一个值。
迭代器有5种,依次为:
——随机访问迭代器(Random Access Iterator)
——双向迭代器(Bidirectional Iterator)
——前向迭代器(Forward Iterator)
——输入迭代器(Input Iterator)
——输出迭代器(Output Iterator)
适配器:
适配器
就是Interface(接口),对容器、迭代器和算法进行包装,但
其实质仍是容器、迭代器和算法
,只是不依赖于具体的标准容器、迭代器和算法类型,
容器适配器
能够理解为容器的模板
,
迭代器适配器
可理解为迭代器的模板
,
算法适配器
可理解为算法的模板。
常见的容器适配器有:
stack、queue、
priority_queue
(不支持迭代器访问)
算法:
STL包含了不少对
容器
进行处理的
函数
,它们的处理思路大致相同:使用
迭代器
来标识要处理的数据或数据段、以及结果的存放位置,有的函数还做为对象参数传递给另外一个函数,实现数据的处理。
相关文章
1.
STL六大组件
2.
STL六大组件简介
3.
STL 六大组件概要
4.
STL——STL六大组件概念
5.
C++ STL六大组件-简介
6.
STL 源码分析六大组件-allocator
7.
STL六大组件交互关系
8.
STL 六大组件 功能与运用
9.
STL六大组件 功能与运用
10.
C++ STL中的六大件
更多相关文章...
•
ASP AdRotator 组件
-
ASP 教程
•
ASP Content Linking 组件
-
ASP 教程
•
JDK13 GA发布:5大特性解读
•
RxJava操作符(六)Utility
相关标签/搜索
stl
组件
六件
六大
大件
组件封装
零组件
Flutter组件
组件基础
开源组件
Docker命令大全
PHP 7 新特性
MySQL教程
插件
文件系统
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
网络层协议以及Ping
2.
ping检测
3.
为开发者总结了Android ADB 的常用十种命令
4.
3·15 CDN维权——看懂第三方性能测试指标
5.
基于 Dawn 进行多工程管理
6.
缺陷的分类
7.
阿里P8内部绝密分享:运维真经K8S+Docker指南”,越啃越香啊,宝贝
8.
本地iis部署mvc项目,问题与总结
9.
InterService+粘性服务+音乐播放器
10.
把tomcat服务器配置为windows服务的方法
本站公众号
欢迎关注本站公众号,获取更多信息
相关文章
1.
STL六大组件
2.
STL六大组件简介
3.
STL 六大组件概要
4.
STL——STL六大组件概念
5.
C++ STL六大组件-简介
6.
STL 源码分析六大组件-allocator
7.
STL六大组件交互关系
8.
STL 六大组件 功能与运用
9.
STL六大组件 功能与运用
10.
C++ STL中的六大件
>>更多相关文章<<