C++ 迭代器库 - 上一页


描述

它返回一个迭代器,该迭代器指向如果前进-n个位置它将指向的元素。

宣言

以下是 std::prev 的声明。

C++11

template <class BidirectionalIterator>
  BidirectionalIterator prev (BidirectionalIterator it,
       typename iterator_traits<BidirectionalIterator>::difference_type n = 1);

参数

  • it - 它是迭代器中的基位置。

  • n - 表示职位数量。

返回值

它返回一个指向其之前 n 个位置的元素的迭代器。

例外情况

如果对迭代器执行的任何算术运算都会抛出异常。

时间复杂度

随机访问迭代器的常量。

例子

以下示例显示了 std::prev 的用法。

#include <iostream>     
#include <iterator>     
#include <list>         
#include <algorithm>    

int main () {
   std::list<int> mylist;
   for (int i = 0; i < 10; i++) mylist.push_back (i*1);

   std::cout << "The last element is " << *std::prev(mylist.begin()) << '\n';

   return 0;
}

让我们编译并运行上面的程序,这将产生以下结果 -

The last element is 10
迭代器.htm