C++学习 二十、STL(2)迭代器
前言
- 前言
- 迭代器
- 定义迭代器
- 迭代器功能
本篇继续学习C++ STL的内容,迭代器。
迭代器上篇提到,迭代器是一种用于访问和遍历容器内元素的数据类型,是指针的泛化。迭代器使得编程时,可以用同一种方法处理不同的容器。
定义迭代器容器有自己的迭代器类型,创建迭代器的方法是 容器类型::迭代器类 迭代器名
迭代器类可分为:
iterator
正向迭代器const_iterator
常量正向迭代器reverse_iterator
反向迭代器const_reverse_iterator
常量反向迭代器
正向迭代器的++
操作是指向容器的后一个元素;反向迭代器的++
操作时指向容器的前一个元素。
const_iterator
可以指向const
和非const
容器,但指向的元素值是不能通过该迭代器修改的(类似常量指针)。
被声明为const
的迭代器const xxx::iterator
与const_iterator
不同,意思是迭代器的指向不能改变(类似指针常量)。
注意:反向迭代器可通过正向迭代器构造,也可通过rbegin(),rend()
函数获得。
注意:反向迭代器指向的首元素是容器的最后一个元素,也就是说rbegin()
指向最后一个元素;rend()
指向第一个元素前一个元素的位置。
#include
#include
#include
#include
#include
using namespace std;
int main(){
vector vec(5);
vector::reverse_iterator iter(vec.rend());
iter--;
*iter = 5;
for(int i: vec)
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?