zoukankan      html  css  js  c++  java
  • reverse iterator

    Problem 1:

    vector<int> coll = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    
    vector<int>::const_iterator pos = find (coll.cbegin(), coll.cend(),5);
    
    cout << "pos: " << *pos << endl;
    
    vector<int>::const_reverse_iterator rpos(pos);
    
    cout << "rpos: " << *rpos << endl;
    

    This program has the following output:

    pos: 5

    rpos: 4

    Same position but its value is changed; this can use the pos in the diagram to illustrate it.

    Problem 2:

    deque<int> coll = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
    
    deque<int>::const_iterator pos1;
    
    pos1 = find (coll.cbegin(), coll.cend(), 2); // value
    
    deque<int>::const_iterator pos2;
    
    pos2 = find (coll.cbegin(), coll.cend(), 7); // value
    
    for_each (pos1, pos2, print); // operation
    
    deque<int>::const_reverse_iterator rpos1(pos1);
    
    deque<int>::const_reverse_iterator rpos2(pos2);
    
    for_each (rpos2, rpos1, print); // operation
    

    The program is as follows:

    2 3 4 5 6

    6 5 4 3 2

    It seems the behavior of the problem 2 is not same with problem 1.

    This can use the pos1, pos2 in the diagram to illustrate it.

  • 相关阅读:
    8.02_python_lx_day14
    8.02_python_lx_day13<2>
    8.02_python_lx_day13<1>
    7.30_python_lx_day20
    7.29_python_lx_da19
    7.29_python_lx_day12
    Docker镜像
    Docker学习Ⅱ
    Docker学习Ⅰ
    2-3树的插入和删除原理
  • 原文地址:https://www.cnblogs.com/Cmpl/p/3966886.html
Copyright © 2011-2022 走看看