zoukankan      html  css  js  c++  java
  • C++中的迭代器

      除了使用下标访问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对象的迭代器失效。

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

    迭代器运算

      

    迭代器的算术运算

      

      

    使用迭代器运算

      二分搜索法

  • 相关阅读:
    Tomcat常用配置
    java开发规范总结_命名规范
    Android学习笔记(广播机制)
    Java Web 实现Mysql 数据库备份与还原
    interfaces
    windows phone 1
    正在写。。
    Exceptions
    类的非常简单的应用
    say hello
  • 原文地址:https://www.cnblogs.com/xingzhuan/p/10568118.html
Copyright © 2011-2022 走看看