我想得到当前it指向的是数组中的第几个元素,就是当前数组的下标,请问有什么函数可以实现嘛?

现在定义一个迭代器:vector<int>::iterator it = a.begin(); it != a.end(); ++it

噜噜哒
浏览 120回答 3
3回答

隔江千里

你可以使用if(*it == n){num++;}使用num判断是vector的第几个元素。一般没这么用的vetor的成员函数可以实现你想要的数据begin() 返回指向map头部的迭代器&nbsp;clear() 删除所有元素&nbsp;count() 返回指定元素出现的次数&nbsp;empty() 如果map为空则返回true&nbsp;end() 返回指向map末尾的迭代器&nbsp;equal_range() 返回特殊条目的迭代器对&nbsp;erase() 删除一个元素&nbsp;find() 查找一个元素&nbsp;get_allocator() 返回map的配置器&nbsp;insert() 插入元素&nbsp;key_comp() 返回比较元素key的函数&nbsp;lower_bound() 返回键值>=给定元素的第一个位置&nbsp;max_size() 返回可以容纳的最大元素个数&nbsp;rbegin() 返回一个指向map尾部的逆向迭代器&nbsp;rend() 返回一个指向map头部的逆向迭代器&nbsp;size() 返回map中元素的个数&nbsp;swap() 交换两个map&nbsp;upper_bound() 返回键值>给定元素的第一个位置&nbsp;value_comp() 返回比较元素value的函数

拉莫斯之舞

一种是简单点方法,最简单的方法,迭代器动的时候,sum++放在循环里,返回sum就好了,sum 的类型可以是size_t 或者int也行。

慕慕森

it - a.begin() 得到一个 difference_type (signed integral type),由vector<int>决定
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java