std::prev
Материал из cppreference.com
![]() | Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
Определено в заголовочном файле <iterator> | ||
template<class BidirIt > BidirIt prev( BidirIt it, | (начиная с C++11) | |
Вернуть n-ого предшественника итератора 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 . |
[править]Возвращаемое значение
n-ый предшественник итератора it.
Оригинал:
The nth predecessor of iterator it.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
[править]Возможная реализация
template<class BidirIt> BidirIt prev(BidirIt it, typenamestd::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) | инкрементирует итератор (функция) |
продвигает итератор на заданное расстояние (функция) |