C++之标准模板库

C++的内置STL可以分为如下六大类:
容器(containers)、迭代器(iterators)、空间分配器(allocator)、适配器(adapters)、算法(algorithms)、仿函数(functors)
这六大类模板,被C++组织在13个头文件中:
<vector>、<list>、<deque>、<set>、<map>、<stack>、<queue>、<array>、<iterator>、<memory>、<algorithm>、<numeric>、<functional>

总述:容器是存放不同对象的实体,可将不同对象放入容器中,通过容器的内部结构对其进行管理、维护。容器可以分为三大类10种(vector、deque、list、set、multist、map、multimap、stack、queue、priority_queue)。迭代器是对指针的封装,和容器密切相关,是容器的内部类型,迭代器有4种:iterator、const_iterator、reverse_iterator、const_reverse_iterator。空间分配器主要用来为容器中的元素分配和释放空间。适配器可以理解成转换器的功能。仿函数可以简单理解成函数对象。算法是STL模板实现的近百种算法,可直接使用。

一、容器
二、迭代器

三、算法

四、空间分配器

默认情况空间分配器分为两级空间分配器,申请的内存空间大于128字节就由第一级空间分配器处理,小于或等于128字节则由第二级空间分配器处理。

五、仿函数

本质是重载运算符“()”函数。仿函数形式上是函数,但执行效率比函数快。主要是拓展算法功能,仿函数也称为函数对象。

猜你喜欢

转载自blog.csdn.net/vivien1997/article/details/80068506