STL基本概念
-
容器:可容纳各种数据类型的通用数据结构,是类模板
-
迭代器:可用于依次存取容器的元素,类似于指针
-
算法:用于操作容器中的元素的函数模板
算法本身与他们操作的数据的类型无关,因此它们可以在从简单数组到高度复杂容器的任何数据结构上使用。
容器概述
顺序容器:
概述
vector——动态一维数组
deque——双向队列
list——双向链表
关联容器:
概述
set/multiset
map/multimap
容器适配器:
stack(栈)
queue(单向队列)
priority_queue(优先级队列)
顺序容器与关联容器中共有的成员函数
-
begin():返回指向容器中第一个元素的迭代器
-
end():返回指向容器中最后一个元素后面位置的迭代器
-
rbegin():返回指向容器中最后一个元素的迭代器
-
rend():返回指向容器第一个元素前面位置的迭代器
-
erase():从容器中删除一个或者几个元素
-
clear():清空容器
顺序容器常用成员函数
-
front():返回容器中第一个元素的引用
-
back():返回容器中最后一个元素的引用
-
push_back():在容器末尾增加新元素
-
pop_back():删除容器末尾的元素
-
erase():删除迭代器指向的元素(可能会使迭代器失效)
或者删除一个区间,返回被删除元素后面元素的迭代器