持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第3天,点击查看活动详情
简介
STL是一种标准模板库。迭代器和C++中的指针很类似。个人感觉使用STL可以有效提高代码的效率。
一、STL格式
不同的容器对应着不同的迭代器,他们的迭代器命名格式如下:
| 迭代器定义 | 具体格式 |
|---|---|
| 正向迭代器 | 容器类名::iterator 迭代器名; |
| 常量正向迭代器 | 容器类名::const_iterator 迭代器名; |
| 反向迭代器 | 容器类名::reverse_iterator 迭代器名; |
| 常量反向迭代器 | 容器类名::const_reverse_iterator 迭代器名; |
二、STL算法
查找算法
查找重复值算法
删除与替换算法
三、常用的容器
- vector:优点是连续存储,空间利用率高,缺点是首尾控制效率不高。
- list:优点是双向链表,由于这个是分散存储的,所以更容易造成内存泄漏,可在任意位置进行插入删除。缺点是不像array,vector一样可以利用位置访问。
- deque:优点是随机访问,查询效率很高,也可以双端pop和push。缺点是占用内存很多,不适合在中间位置的插入删除的操作。
四、完结
本文结束。