Namespaces
Variants

std::ranges::slide_view<V>:: iterator <Const>:: operator++,--,+=,-=

From cppreference.net
Ranges library
Range adaptors
constexpr /*iterator*/ & operator ++ ( ) ;
(1) (начиная с C++23)
constexpr /*iterator*/ operator ++ ( int ) ;
(2) (начиная с C++23)
constexpr /*iterator*/ & operator -- ( )
requires ranges:: bidirectional_range < Base > ;
(3) (начиная с C++23)
constexpr /*iterator*/ operator -- ( int )
requires ranges:: bidirectional_range < Base > ;
(4) (начиная с C++23)
constexpr /*iterator*/ & operator + = ( difference_type n )
requires ranges:: random_access_range < Base > ;
(5) (начиная с C++23)
constexpr /*iterator*/ & operator - = ( difference_type n )
requires ranges:: random_access_range < Base > ;
(6) (начиная с C++23)

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

Пусть current_ и last_ele_ будут базовыми итераторами на начало и конец скользящего окна.

1) Эквивалентно:
current_ = ranges::next(current_);
last_ele_ = ranges::next(last_ele_); // if last_ele_ is present
return *this;
Перед вызовом current_ и last_ele_ (если присутствует) должны быть инкрементируемыми.
2) Эквивалентно: auto tmp = * this ; ++* this ; return tmp ;
3) Эквивалентно:
current_ = ranges::prev(current_);
last_ele_ = ranges::prev(last_ele_); // if last_ele_ is present
return *this;
Перед вызовом current_ и last_ele_ (если присутствует) должны быть декрементируемыми.
4) Эквивалентно: auto tmp = * this ; --* this ; return tmp ;
5) Эквивалентно:
current_ = current_ + n;
last_ele_ = last_ele_ + n; // if last_ele_ is present
return *this;
Перед вызовом выражения current_ + n и last_ele_ + n (если last_ele_ присутствует) должны иметь определенное поведение.
6) Эквивалентно:
current_ = current_ - n;
last_ele_ = last_ele_ - n; // if last_ele_ is present
return *this;
Перед вызовом выражения current_ - n и last_ele_ - n (если last_ele_ присутствует) должны иметь корректное поведение.

Содержание

Параметры

n - позиция относительно текущего местоположения

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

1,3,5,6) * this
2,4) копия * this созданная до изменения

Пример

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

выполняет арифметические операции с итераторами
(функция)