Namespaces
Variants

operator+,- (ranges::stride_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*/ & x, const /*iterator*/ & y )
requires std:: sized_sentinel_for < ranges:: iterator_t < Base > ,

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

operator - ( std:: default_sentinel_t , const /*iterator*/ & x )
requires std:: sized_sentinel_for < ranges:: sentinel_t < Base > ,

ranges:: iterator_t < Base >> ;
(5) (начиная с C++23)
friend constexpr difference_type

operator - ( const /*iterator*/ & x, std:: default_sentinel_t s )
requires std:: sized_sentinel_for < ranges:: sentinel_t < Base > ,

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

Увеличивает или уменьшает итератор .

Пусть current_ , end_ , stride_ и missing_ будут членами данных итератора .

1,2) Эквивалентно auto r = i ; r + = n ; return r ; .
3) Эквивалентно auto r = i ; r - = n ; return r ; .
4) Пусть N будет x. current_ - y. current_ . Возвращает:
  • ( N + x. missing_ - y. missing_ ) / x. stride_ , если Base моделирует forward_range .
  • - /*div-ceil*/ ( - N, x. stride_ ) , если N < 0 .
  • /*div-ceil*/ ( N, x. stride_ ) в противном случае.
5) Эквивалентно return /*div-ceil*/ ( x. end_ - x. current_ , x. stride_ ) ; .
6) Эквивалентно return - ( s - x ) ; .

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

Содержание

Параметры

x, y, i - итераторы
s - страж

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

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

Пример

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

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