迭代器简单介绍
来源:互联网 发布:java rc4加密 编辑:程序博客网 时间:2024/05/07 09:32
通过使用下标运算符可以向string和vector对象进行访问,还有一种方法就是使用迭代器,就像是指针类型一样,实现对对象的间接访问,使用迭代器可以实现从一个元素移动到另一个元素的过程。
begin和end迭代器
如:
vector<int> v{a,b,c,d,e,f,,g,h};
auto a = v.begin(),b = v.end(); //a表示v中的第一个元素,b表示v中尾元素后的下一个位置,在这里a和b的返回值类型为vector<int>::iterator
迭代器运算符
*iter 返回的迭代器iter所指向元素的引用,通过解引用操作符来获取它所指示的对象
iter-> men 与解引用iter获取该元素的名为men的成员,等价于(*iter).men
++iter 向后一个元素移动
--iter 向前一个元素移动
iter1 == iter2 判断两个迭代器是否相等
iter1 != iter2
*iter 的例子
值得注意的是(*it).empty()与*it.empty()含义是不相同的,
(*it).empty();
*it.empty(); //错误,it是一个迭代器,它并没有empty()成员
string s1("some string");
for(s1.begin() != s1.end();auto it = s1.begin();++it)
*it = toupper(*it);
iter-> men的例子
访问的是对象中的成员,比如empty、size
for(auto it = text.begin();it != text.end() && !it -> empty();++it)
cout << *it << endl;
(*it).men与it->men作用相同
for(auto it = text.begin();it != text.end() && !(*it) .empty();++it)
cout << *it << endl;
迭代器类型
迭代器类型可以分为iterator和const_iterator两种,
vector<int>::iterator it; //it能读能写vector<int>的元素
vector<int>::const_iterator it1; //it1只能读不能写
- 迭代器简单介绍
- 简单介绍
- 初学c++,简单介绍一下迭代器
- 迭代器之map的简单介绍
- ActiveMQ简单介绍+简单实例
- 简单介绍 DocBook
- Struts简单介绍
- VisualRouter软件简单介绍
- 第一篇---简单介绍
- C++/CLI 简单介绍
- RSS简单介绍
- RSS2.0简单介绍.
- 简单介绍 DocBook
- 【介绍】简单说说SpringFramework
- DLL简单介绍
- MapControl简单介绍
- 先来个简单介绍吧
- CGI技术简单介绍
- ReclyerView双联动,仿饿了吗店铺详情页
- 简单的js倒计时
- Android服务的基本使用2(绑定服务)
- Android拦截黑名单(简易版)
- IOS中label的自适应高度(四种方法)
- 迭代器简单介绍
- 简易的自定义播放器
- FreeMarker 入门篇
- easyUI属性及相应示例
- 照相机(Camera)与视频录制(MediaRecorder)
- 计算结构体的大小
- 史上最全的CSS hack方式一览
- ViBe算法原理和代码解析
- JavaScript编码问题