std::prev
来自cppreference.com
该页由英文版wiki使用Google Translate机器翻译而来。
该翻译可能存在错误或用词不当。鼠标停留在文本上可以看到原版本。你可以帮助我们修正错误或改进翻译。参见说明请点击这里. |
在头文件 <iterator> 中定义
|
||
template< class BidirIt > BidirIt prev( BidirIt it, |
(C++11 起) | |
返回的nth的前身迭代器it.
原文:
Return the nth predecessor of iterator it.
目录 |
[编辑] 参数
it | - | 一个迭代器
|
n | - | 数的元素it应下降
原文: number of elements it should be descended |
类型要求 | ||
-BidirIt 必须满足 BidirectionalIterator 的要求。
|
[编辑] 返回值
nth前身的迭代器it.
[编辑] 可能的实现
template<class BidirIt> BidirIt prev(BidirIt it, typename std::iterator_traits<BidirIt>::difference_type n = 1) { std::advance(it, -n); return it; } |
[编辑] 示例
#include <iostream> #include <iterator> #include <vector> int main() { std::vector<int> v{ 3, 1, 4 }; auto it = v.end(); auto pv = std::prev(it, 2); std::cout << *pv << '\n'; }
输出:
1
[编辑] 另请参阅
(C++11) |
增加一个迭代器 (函数) |
给定距离的迭代器 原文: advances an iterator by given distance (函数) |