STL学习之概念

STL全称为标准模板库,它是一套程序库,是一个框架,是一个架构,不仅仅提供了大量的数据结构和算法,还带给我们一个高层次的、以泛型编程为基础的、系统化的、组件化设计的方法。STL是基于泛型编程架设起来的概念结构,它分成几个大部分,每个部分之间由接口、迭代器或适配器连接起来,形成了一个完整的架构。

STL提供了六大组件:容器、迭代器、算法、仿函数、配接器(适配器)、配置器。其中容器、算法和迭代器主要用于应用,仿函数和适配器主要用于连接和算法的策略,配置器主要为容器进行内存管理。

容器是各种数据结构,比如vector、list、deque、set、map、hash等。

算法是一些函数模板用于容器,比如排序、搜索、复制等

迭代器是容器和算法之间的融合剂,算法对容器的操作都是通过迭代器实现的,每个容器都有自己的迭代器。

仿函数类似于函数,其实是一个类对operate()的重载,函数指针可视为狭义的仿函数。作用是作为算法的某种策略。

适配器是一种修饰容器或迭代器接口的东西,底层由容器完成,适配器限制一些操作或增加一些特定的操作。

配置器复杂空间的配置和管理,主要管理空间的分配和释放。

你可能感兴趣的:(STL)