std::next
Материал из cppreference.com
|
|
Эта страница была переведена автоматически с английской версии вики используя Переводчик Google. Перевод может содержать ошибки и странные формулировки. Наведите курсор на текст, чтобы увидеть оригинал. Щёлкните здесь, чтобы увидеть английскую версию этой страницы. (Вы можете помочь в исправлении ошибок и улучшении перевода. Для инструкций перейдите по ссылке.) |
<metanoindex/>
<tbody> </tbody>| Определено в заголовочном файле <iterator>
|
||
template< class ForwardIt > ForwardIt next( ForwardIt it, typename std::iterator_traits<ForwardIt>::difference_type n = 1 ); |
(начиная с C++11) | |
Вернуть
n-ый следующий итератор от it.Оригинал:
Return the
nth successor of iterator it.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Параметры
| it | — | iterater
Оригинал: an iterater' Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
| n | — | количество элементов, на которое нужно сместиться
Оригинал: number of elements to advance Текст был переведён автоматически используя Переводчик Google. Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда. |
| Требования к типам | ||
-ForwardIt должен соответствовать требованиям ForwardIterator.
| ||
Возвращаемое значение
n-ый следующий итератор от it.Оригинал:
The
nth successor of iterator it.Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Возможная реализация
template<class ForwardIt>
ForwardIt next(ForwardIt it, typename std::iterator_traits<ForwardIt>::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.begin();
auto nx = std::next(it, 2);
std::cout << *it << ' ' << *nx << '\n';
}
Вывод:
3 4
См. также
(C++11) |
декрементирует итератор (функция) |
| продвигает итератор на заданное расстояние (функция) |