Namespaces
Variants

operator+,- (ranges::slide_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 )
requires std:: sized_sentinel_for < ranges:: iterator_t < Base > ,

ranges:: iterator_t < Base >> ;
(4) (начиная с C++23)

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

1,2) Эквивалентно: auto r = i ; r + = n ; return r ; .
3) Эквивалентно: auto r = i ; r - = n ; return r ; .
4) Пусть current_ и last_ele_ будут базовыми итераторами на начало и конец скользящего окна соответственно. Эквивалентно:
  • return x. last_ele_ - y. last_ele_ ; , если last_ele_ присутствует. В противном случае,
  • return x. current_ - y. current_ ; .

Эти функции не видны при обычном unqualified или qualified lookup и могут быть найдены только с помощью argument-dependent lookup , когда slide_view:: iterator <Const> является ассоциированным классом аргументов.

Содержание

Параметры

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

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

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

Пример

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

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