Namespaces
Variants

operator+,- (ranges::enumerate_view:: iterator )

From cppreference.net
Ranges library
Range adaptors
friend constexpr /* iterator */

operator + ( const /* iterator */ & i, difference_type n )

requires ranges:: random_access_range < /* Base */ > ;
(1) (начиная с C++23)
friend constexpr /* iterator */

operator + ( difference_type n, const /* iterator */ & i )

requires ranges:: random_access_range < /* Base */ > ;
(2) (начиная с C++23)
friend constexpr /* iterator */

operator - ( const /* iterator */ & i, difference_type n )

requires ranges:: random_access_range < /* Base */ > ;
(3) (начиная с C++23)
friend constexpr difference_type
operator - ( const /* iterator */ & i, const /* iterator */ & j ) noexcept ;
(4) (начиная с C++23)

Выполняет iterator арифметику или вычисляет расстояние.

pos_ представляет собой базовый индекс, а Base является (возможно, константно-квалифицированным) типом базового представления.

Эквивалентно:

1) auto temp = i ; temp + = n ; return temp ;
2) return i + n ;
3) auto temp = i ; temp - = n ; return temp ;
4) return i. pos_ - j. pos_ ;

Эти функции не видны при обычном неквалифицированном или квалифицированном поиске и могут быть найдены только с помощью поиска, зависимого от аргументов , когда enumerate_view:: iterator <Const> является ассоциированным классом аргументов.

Содержание

Параметры

i, j - итераторы
n - позиция относительно текущего местоположения

Возвращаемое значение

1,2) Инкрементированный итератор.
3) Декрементированный итератор.
4) Расстояние между заданными итераторами.

Пример

Отчеты о дефектах

Следующие отчеты об изменениях поведения, влияющие на дефекты, были применены ретроактивно к ранее опубликованным стандартам C++.

DR Applied to Behavior as published Correct behavior
LWG 3912 C++23 перегрузка (4) не была noexcept она является noexcept

Смотрите также

перемещает вперед или назад базовый итератор
(public member function)