STL常用容器归纳总结(1)

这篇大体介绍一下STL相关内容
STL简介

C++中已经实现了数据结构中的很多容器和算法,它们构成标准C++库的子集,即标准模板类库 (Standard Template Library).STL是一个功能强大的基于模板的容器库,通过直接使用这些现成的标准化组件可以大大提高算法设计的效率和可靠性。

STL概述

STL主要由container(容器)、algorithm(算法)和iterator(迭代器)三大部分构成,容器用于存放数据对象(元素),算法用于操作容器中的数据对象,算法和容器之间的中介就是迭代器。

  • container(容器):简单的说一个stl容器就是一种数据结构,例如链表、栈和队列等,STL中都已经实现好了,在算法设计中可以直接使用它们。这篇下面会详细讲各个容器,另外一些哈希表容器hash_set,hash_map等,它们属于非标准STL容器,其功能可以用set,map代替。
  • algorithm(算法):stl的算法部分主要由头文件组成。stl提供了大约100个实现算法的模板函数。
  • iterator(迭代器):stl迭代器用于访问容器中的数据对象。每个容器都有自己的迭代器,只有容器自己知道如何访问自己的元素。迭代器像c/c++中的指针,算法通过迭代器来定位和操作容器中的元素。
常用STL容器

STL容器很多,每一个容器就是一个类模板,大致分为顺序容器、适配器容器和关联容器3种类型。

0%