当前位置:网站首页>【STL源码剖析】STL六大组件功能与运用(目录)

【STL源码剖析】STL六大组件功能与运用(目录)

2022-06-24 22:40:00 Cloudeeeee

【STL源码剖析】STL六大组件功能与运用(目录)

1. 容器(containers)

简介: 各种数据结构,用来存放数据,如vector、list、deque(双端队列)、set、map等等

【STL源码剖析】容器(undo)

2. 算法(algorithms)

简介: 各种STL提供的常用算法,如sort、search、copy、erase等等。从实现的角度来看,STL算法是一种方法模板(function template)

【STL源码剖析】算法(undo)

3. 迭代器(iterators)

简介: 迭代器扮演的是容器和算法之间的粘合剂,是所谓的“泛型指针”。从实现的角度来看,迭代器是一种将operator*,operator->,operator++,operator–,等指针相关操作重载的类模板(class template)。
所有STL容器都有自己专属的迭代器,原生指针(nativa pointer)也是一种迭代器。

什么是原生指针
原生指针即普通的指针,类型名可以是基础类型,如int,double等,也可以是一个自己定义的Class类;但是如果一个类重载了 * 和 -> 的运算符,可以像指针一样用 * 和 -> 操作,就不是原生的。如iterator等。

【STL源码剖析】迭代器(undo)

4. 仿函数(functors)

简介: 仿函数的行为类似于函数,可以作为算法的某种策略。从实现的角度来看,仿函数是一种重载了operator()的class或class template。一般函数指针可视为狭义的仿函数

【STL源码剖析】仿函数(undo)

5. 配接器(adapters、适配器)

简介: 配接器是一种用来修饰容器或仿函数或迭代器接口的东西,如STL提供的queue和stack,虽然看似容器,但是它们只能称作一种容器配接器,因为它们的底层借助的是deque来实现的。改变function接口的被称为function adapter,改变容器的被称为container adapter,改变iterator接口的被称为iterator adapter。

【STL源码剖析】配接器(undo)

6. 配置器(allocator)

简介: 负责空间配置与管理。从实现的角度来看,配置器是一个实现了动态空间配置、空间释放的class template。

【STL源码剖析】配置器(ing)

在这里插入图片描述

原网站

版权声明
本文为[Cloudeeeee]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_43972154/article/details/125425633