zoukankan      html  css  js  c++  java
  • C++ Primer学习笔记(四)—— 认识迭代器

        迭代器(iterator):是一种检查容器内元素并遍历所有元素的数据类型。

        每个容器类都定义了自己的迭代器类型,如vector:

        vector<int>::iterator iter;

        这条语句定义了一个名为iter的变量,它的数据类型是由vector<int>定义的iterator类型。

        每种容器都定义了一对命名为begin和end的函数,用于返回迭代器。如果容器中有元素的话,由begin返回的迭代器指向第一个元素:

        vector<int>::iterator iter = ivec.begin();

        上述语句把iter初始化为由名为begin的vector操作返回的值。假设vector不空,初始化后,iter即指该元素为ivec[0]。

        由end操作返回的迭代器指向vector的“末端元素的下一个”。通常称为超出末端迭代器(off-the-end iterator),表明它指向了一个不存在的元素。如果vector为空,begin返回的迭代器和end返回的迭代器相同。

        迭代器可以使用解引用操作符(*操作符)来访问迭代器所指向的元素。 解引用操作符返回迭代器当前所指向的元素:

        *iter = 0;

        迭代器使用自增操作符向前移动迭代器指向容器中下一个元素:

        ++iter;

        注:用于end操作返回的迭代器不指向任何元素,因此不能对它进行解引用或自增操作。

       

  • 相关阅读:
    jquery ajax全解析
    java 远程调试 remote java application
    w3c html dom
    ngx_php
    websocket+前后端分离+https的nginx配置
    CentOS6下基于Nginx搭建mp4/flv流媒体服务器
    nginx could not build the server_names_hash 解决方法
    Nginx 实现AJAX跨域请求
    Nginx与Apache的Rewrite规则的区别
    nginx支持pathinfo模式
  • 原文地址:https://www.cnblogs.com/ppffs/p/3246293.html
Copyright © 2011-2022 走看看