STL基本概念:
STL——Standard Template Library (标准模板库)
提升开发效率并保证代码质量,通过泛型编程,使得这些数据结构和算法适用于多种数据类型
STL的六大组件:容器、算法、迭代器、仿函数、适配器(配接器)、空间配置器
容器:
这是用于存储数据的数据结构。
算法:
STL提供了一系列通用算法。
迭代器:
提供了访问容器中元素的方式,它是容器和算法之间的桥梁。
仿函数:
是一种重载了函数调用操作符operator()的类或对象,使得它们可以像函数一样被调用。
可以用来定制算法的行为,比如比较函数、平方函数等,是实现策略模式的一种方式。
适配器:
用于调整现有类接口以满足新需求,分为三类:
容器适配器,它们基于现有的容器提供特定接口。
迭代器适配器,改变迭代器的行为(如反向迭代器)。
函数适配器,调整或增强函数对象的行为。
空间配置器:
负责管理内存的分配与释放。
为容器提供了一种机制来获取和管理内存,使得STL能够独立于底层的内存管理机制,并允许用户自定义内存管理策略,以提高效率或满足特殊需求。