• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C++中的迭代器

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

  除了使用下标访问string对象的字符或者vector对象的元素,还可以通过迭代器来实现相同的目的。

使用迭代器

  

迭代器运算符

  

  

将迭代器从一个元素移动到另外一个元素

  迭代器使用递增运算符(++)来从一个元素移动到下一个元素。

注意:因为end返回的迭代器并不实际只是某个元素,所以不能对其进行递增或解引用的操作。

 

 关键概念:泛型编程,所有标准库容器都定义了==和!=。

 

迭代器类型

  itreator和const_iterator表示迭代器的类型。【类似于int 和const int,,,】

 begin 和end运算符

  

 

 C++11新标准下引入两个新函数,cbegin 和cend ,与begin和end不同,不管vector对象本身是否是常量,返回值都是const_iterator;

 

结合解引用和成员访问操作

  (*it).empty;    //解引用,然后调用结果对象的empty成员

 

某些对vector对象的操作会使迭代器失效

  限制1:不能在范围for循环中向vector对象添加元素。

  限制2:限制任何一种可能改变vector对象容量的操作,例如push_back,会使vector对象的迭代器失效。

谨记:但凡是使用了迭代器的循环体,都不要想迭代器所属的容器添加元素。

 

迭代器运算

  

 

迭代器的算术运算

  

  

使用迭代器运算

  二分搜索法

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#WebClient常见用法发布时间:2022-07-13
下一篇:
新建C#的WIndows应用程序发布时间:2022-07-13
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap