Spec-Zone.ru › C++

std::move_iterator<Iter>::operator++,+,+=,--,-,-=

move_iterator& operator++();
(1) (constexpr с C++17)
move_iterator& operator--();
(2) (constexpr с C++17)
move_iterator operator++( int );
(3) (constexpr с C++17)
(до C++20)
constexpr auto operator++( int );
(с C++20)
move_iterator operator--( int );
(4) (constexpr с C++17)
move_iterator operator+( difference_type n ) const;
(5) (constexpr с C++17)
move_iterator operator-( difference_type n ) const;
(6) (constexpr с C++17)
move_iterator& operator+=( difference_type n );
(7) (constexpr с C++17)
move_iterator& operator-=( difference_type n );
(8) (constexpr с C++17)

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

1,3) Увеличивает базовый итератор.
2,4) Уменьшает базовый итератор.
5) Возвращает итератор, перемещённый на n позиций.
6) Возвращает итератор, перемещённый на -n позиций.
7) Перемещает итератор на n позиций.
8) Перемещает итератор на -n позиций.

Параметры

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

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

1,2) *this
3) Копия *this, созданная до изменения. Если Iter не соответствует концепции forward_iterator, ничего не возвращает(с C++20)
4) Копия *this, созданная до изменения
5) move_iterator(base() + n);
6) move_iterator(base() - n);
7,8) *this

Пример

См. также

operator+
(C++11)
перемещает итератор вперёд
(шаблон функции)
operator-
(C++11)
вычисляет расстояние между двумя адаптерами итераторов
(шаблон функции)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/iterator/move_iterator/operator_arith

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API