如何通过迭代器来或得对应元素的下标
首先介绍一个函数:distance,它返回的是两个迭代器之间的距离。使用这个函数,就能完成迭代器与下标之间的转换:下标 = 当前迭代器位置-容器头部。看一个例子就明白了:[cpp] viewplaincopy#include #include using namespace std; int main
·
首先介绍一个函数:distance,它返回的是两个迭代器之间的距离。
使用这个函数,就能完成迭代器与下标之间的转换:下标 = 当前迭代器位置-容器头部。
看一个例子就明白了:
- #include <iostream>
- #include <list>
- using namespace std;
- int main () {
- list<int> mylist;
- for (int i=0; i<10; i++) mylist.push_back (i*10);
- list<int>::iterator first = mylist.begin();
- list<int>::iterator last = mylist.end();
- list<int>::iterator it = first;
- for(;it != last;++it)
- cout<<"第"<<distance(first,it)<<"个元素的值为:"<<*it<<endl;
- return 0;
- }
更多推荐
已为社区贡献1条内容
所有评论(0)