c++/oop---STL

STL: Standard Template Library

容器:可容纳各种数据类型的通用数据结构, 是类模板
迭代器:可用于依次存取容器中元素,类似于指针
算法:用来操作容器中的元素的函数模板 

1顺序容器:vector, deque,list
2 关联容器:set, multiset, map, multimap
3 容器适配器:stack, queue, priority_queue

 

相关函数

begin 返回指向容器中第一个元素的迭代器
end 返回指向容器中最后一个元素后面的位置的迭代器、

erase 从容器中删除一个或几个元素
clear 从容器中删除所有元素

front : 返回容器中第一个元素的引用
back : 返回容器中最后一个元素的引用
push_back : 在容器末尾增加新元素
pop_back : 删除容器末尾的元素
erase : 删除迭代器指向的元素 (可能会使该迭代器失效),或删除一个区间,返回被删除元素后面的那个元素的迭代器

 

迭代器:

类名 ::iterator p;

类名 ::const_iterator p; //只能读,不能写

 

容器 容器上的迭代器类别
vector 随机访问
deque 随机访问
list 双向
set/multiset 双向
map/multimap 双向
stack 不支持迭代器
queue 不支持迭代器
priority_queue 不支持迭代器

注意到迭代器都是双向的,所以我把反向迭代器删了,没有卵用

 

算法:

find(v.begin(),v.end(),val)

从[first,last) 中找到第一个等于 val 的,返回迭代器,找不到返回last

sort(first,last)

把[first,last] 排序

 

posted @ 2022-03-31 17:09  liankewei123456  阅读(25)  评论(0编辑  收藏  举报