浅析STL之STL是什么,包含什么,怎么用呢?

初识STL——基础篇

一、STL到底是什么

 STL从广义上分为:容器、算法和迭代器。迭代器是容器和算法的粘合剂。

又细分为六大组件:容器、算法、迭代器、仿函数、适配器、空间配置器;彼此间可以组合套用。
容器通过空间配置器取得数据存储空间,算法通过迭代器存储容器中的内容,仿函数可以协助算法完成不同的策略变化,适配器可以修饰仿函数。
总的来说,STL不仅是一个可复用的组件库,而且是包装了算法和数据结构的软件框架。

二、STL三大组件

1、容器

  • 数组(array)、链表(list)、栈(stack)、队列(queue)、集合(set)、映射表(map)

  • 根据数据在容器中的排列特性,分为序列式容器和关联式容器。序列式容器:强调值得排序,如Vector、Deque、List;关联式容器:元素在容器中并没有保存元素置入容器时得到逻辑顺序,如Set、Map。
    2、算法

  • 质变算法:用了之后会改变元素内容的方法,如替换、删除;

  • 非质变算法:用了之后不会改变元素内容的方法,如查找、遍历。
    3、迭代器到底是个啥东西呢?
    迭代器它是一个抽象的设计概念,在程序里实际并没有直接对应于这个概念的实物。它是一种方法,能够遍历某个容器当中的元素,而又不用暴露该容器的内部表述方式。而我们操作的时候,可以把它理解为一个指针来操作。

三、常用容器

你可能感兴趣的:(STL学习,C++,STL)