【文件属性】:
文件名称:标准模板库STL
文件大小:285KB
文件格式:PPT
更新时间:2018-01-21 04:03:35
STL
一份讲解全面的标准模板库STL学习资料
标准模板库STL主要由6大组件组成:
(1)容器(Containers)。包括各种基本数据结构的类模板。
STL容器部分主要由头文件、、、、< map>、和组成。
(2)算法(Algorithms)。包括各种基本算法,如比较、交换、查找、排序、遍历操作、复制、修改、移除、反转、合并等等。
STL算法部分主要由头文件和组成。
(3)迭代器(Iterators)。迭代器是面向对象版本的指针,如同指针可以指向内存中的一个地址,迭代器可以指向容器中的一个位置。
STL的每一个容器类模板中,都定义了一组对应的迭代器类,用以存取容器中的元素。这样,在STL中迭代器就将算法和容器联系起来了,通过迭代器,算法函数可以访问容器中指定位置的元素,而无需关心元素的具体类型。
STL迭代器部分主要由头文件和组成。
(4)函数对象(Function Objects)。一种行为类似于函数的class,实现技术上是一个改写了“call operator()”的class。
STL 提供 15 个预定义的 Function objects。头文件中定义了一些类模板,用以声明函数对象。
(5)适配器(Adaptors)。简单地说就是一种接口类,专门用来修改现有类的接口,提供一种新的接口;或调用现有的函数来实现所需要的功能。
主要包括3种适配器Container Adaptors、Iterator Adaptors与Function Adaptors。其中迭代器适配器的定义在头文件中,函数适配器的定义在头文件中。
(6)内存配置器(Allocators)。为STL提供空间配置的系统。
头文件中的主要部分是模板类allocator,它负责产生所有容器中的默认分配器。容器使用allocator完成对内存的操作,allocator提供内存原语以对内存进行统一的存取。