Пространства имён
Варианты
Действия

std::prev

Материал из cppreference.com
< cpp‎ | iterator

 
 
Iterator библиотеки
Iterator примитивов
Оригинал:
Iterator primitives
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Iterator адаптеров
Оригинал:
Iterator adaptors
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Поток итераторы
Оригинал:
Stream iterators
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Iterator операций
Оригинал:
Iterator operations
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Диапазон доступа
Оригинал:
Range access
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
 
Defined in header <iterator>
template< class BidirIt >

BidirIt prev( BidirIt it,

              typename std::iterator_traits<BidirIt>::difference_type n = 1 );
(начиная с C++11)
Вернуться nth предшественника итератор it.
Оригинал:
Return the nth predecessor of iterator it.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править] Параметры

it
итератор
Оригинал:
an iterator
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
n
Число it элементы должны быть потомками
Оригинал:
number of elements it should be descended
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Требования к типам
-
BidirIt должен соответствовать требованиям BidirectionalIterator.

[править] Возвращаемое значение

nth предшественника итератор it.
Оригинал:
The nth predecessor of iterator it.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Возможная реализация

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)
увеличить итератор
Оригинал:
increment an iterator
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(функция) [править]
продвигает итератор на заданное расстояние
Оригинал:
advances an iterator by given distance
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(функция) [править]