zoukankan      html  css  js  c++  java
  • 迭代器

    迭代器是一种对象,用于对STL容器的元素进行迭代处理。

    它指向容器内部的特定位置,并提供以下基本运算符:

    运算符 作用
    ++ 让迭代器指向至下一元素
    ==、!= 判断两个迭代器是否指向同一位置并返回结果
    = 将右侧的值带入左侧迭代器所引用元素的位置
    * 返回该位置的元素

    迭代器的优势在于,对任何种类的容器都可以用同一种方法(语法)顺次访问其元素。

    此外,在处理数组元素时,它还可以当做C/C++的指针来用,也就是说,可以把迭代器看成通过通用接口(函数等的使用方法)对容器进行迭代处理的指针。

    不过,即便接口相同,其实现和行为也会因不同的容器而有所不同。

    为使用迭代器,容器提供了一些同名的成员函数:

    成员函数 功能
    begin() 返回指向容器开头的迭代器
    end() 返回指向容器末尾的迭代器,这里的末尾指最后一个元素的下一个位置
    #include <iostream>
    #include <vector>
    
    using namespace std;
    
    void print(vector< int > v)
    {
        vector < int >::iterator it;
        for (it=v.begin();it!=v.end();it++)
            cout<<*it;
        cout<<endl;
    }
    
    int main()
    {
        int N=4;
        vector < int >v;
    
        for (int i = 0; i < N; i++) {
            int x;
            cin>>x;
            v.push_back(x);
        }
    
        print(v);
    
        vector < int >::iterator it = v.begin();
        *it = 3;
        it++;
        (*it)++;
    
        print(v);
    
        return 0;
    }
    
    输入:
    2 0 1 4
    输出:
    2014
    3114
    
  • 相关阅读:
    java測试网络连接是否成功并设置超时时间
    php BC高准确度函数库
    Snail—Hibernate各种异常
    js中()()问题
    Servlet 是否线程安全 看完便知
    Flask的flask-sqlalchemy
    SQLALchemy之介绍,基本使用
    SQLALchemy之创建表,删除表
    SQLALchemy之ORM操作
    我为什么从python转向go
  • 原文地址:https://www.cnblogs.com/AlexKing007/p/12338368.html
Copyright © 2011-2022 走看看