C++ List: 获取指定位置的迭代器
要获取 list 中指定位置的迭代器,可以使用 list 的成员函数 begin() 和 end(),以及迭代器的加法运算符。
假设我们有一个 list 对象 lst,要获取它的第 3 个元素的迭代器,可以按照以下步骤操作:
- 获取
lst的起始迭代器:auto it = lst.begin(); - 将迭代器
it向后移动 2 个位置,即跳过前两个元素:std::advance(it, 2); - 现在的迭代器
it指向lst的第 3 个元素,可以将它返回或者用于操作该元素。
完整的代码如下:
#include <list>
int main() {
std::list<int> lst = {1, 2, 3, 4, 5};
// 获取 lst 的第 3 个元素的迭代器
auto it = lst.begin();
std::advance(it, 2);
auto third = it;
// 输出第 3 个元素
std::cout << *third << std::endl;
return 0;
}
输出:
3
原文地址: https://www.cveoy.top/t/topic/lAFL 著作权归作者所有。请勿转载和采集!