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

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

  • 说明
    • 1. 容器(containers)
    • 2. 算法(algorithms)
    • 3. 迭代器(iterators)
    • 4. 仿函数(functors)
    • 5. 配接器(adapters、适配器)
    • 6. 配置器(allocator)

说明

目前 6. 配置器(allocator)、3. 迭代器(iterators)、1. 容器(containers)、4. 仿函数(functors)已经完结,正在更新 5. 配接器(adapters、适配器)

1. 容器(containers)

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

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

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源码剖析】迭代器(finished)

4. 仿函数(functors)

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

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

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

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

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

6. 配置器(allocator)

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

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

【STL源码剖析】STL六大组件功能与运用(目录)_第1张图片

你可能感兴趣的:(数据结构与算法,c++,开发语言)