std::prev 是 C++ 标准库中的一个函数,用于获取给定迭代器的前一个位置。它通常与 STL 容器(如 vector, list, map 等)一起使用。以下是 std::prev 的基本用法和示例。
#include <iostream>
#include <vector>
#include <iterator>int main() {std::vector<int> vec = {10, 20, 30, 40, 50};// 获取最后一个元素的迭代器auto it = vec.end();// 使用 std::prev 获取前一个元素auto prev_it = std::prev(it); // 指向 50std::cout << "Last element: " << *prev_it << std::endl; // 输出: 50// 获取倒数第二个元素auto second_last_it = std::prev(it, 2); // 指向 40std::cout << "Second last element: " << *second_last_it << std::endl; // 输出: 40return 0;
}
Last element: 50
Second last element: 40