STL中的distance和advance的简单用法

#include <iostream>
#include <list>
#include <algorithm>
#include <iterator>
using namespace std;

int main()
{
    list<int> coll;

    for (int i = 1; i <= 9; ++i)
    {
        coll.push_back(i);
    }

    list<int>::iterator pos = coll.begin();
    cout << *pos << endl;

    advance(pos, 3);
    cout << *pos << endl;

    advance(pos, -1);
    cout << *pos << endl;

    int size = distance(coll.begin(), coll.end());

    printf("size is %d
", size);

    getchar();
    return 0;
}

运行结果:

参考:http://www.programlife.net/stl-iterator-funcation-advance.html

     http://www.programlife.net/stl-iterator-funcation-distance.html

原文地址:https://www.cnblogs.com/hpcpp/p/7850021.html