Архитектурная акустика/Реализация/IteratorAdapter2D::operator-

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
IteratorAdapter2D operator-(difference_type offset) const; //1
difference_type operator-(const IteratorAdapter2D& right) const; //2

Возвращает итератор, сдвинутый к началу относительно текущего на заданное число позиций, либо расстояние между двумя итераторами.

  1. Создает и возвращает итератор на заданном расстоянии от *this.
  2. Возвращает расстояние между итераторами.
Параметры
offsetЗначение, на которое необходимо выполнить сдвиг копии итератора относительно *this. Отрицательные значения эквивалентны вызову *this + -offset;.
rightСсылка на экземпляр IteratorAdapter2D, из позиции которого вычитается текущая позиция.
Возвращаемое значение:
Перегрузка 1 возвращает копию итератора, сдвинутую относительно *this к началу контейтера на значение offset. Перегрузка 2 возвращает разницу между позициями *this и right. Если *this отстоит дальше от начала, чем right, возвращается положительное значение, иначе - неположительное.