У меня есть последовательность значений, которую я хотел бы передать функции, которая принимает пару (начало итератора, конец итератора)
. Однако я хочу, чтобы обрабатывался только каждый второй элемент исходной последовательности.
Есть ли хороший способ с помощью Standard-Lib / Boost создать фасад итератора, который позволит мне передать исходную последовательность? Я подумал, что что-то такое простое уже есть в итераторах повышения или библиотеках диапазонов, но я этого не сделал. Ничего не нашел.
Или мне не хватает другого совершенно очевидного способа сделать это? Конечно, я знаю, что у меня всегда есть возможность скопировать значения в другую последовательность, но это не то, что я хочу делать.
Изменить: Я знаю о filter_iterator
, но он фильтрует по значения - это не меняет способ продвижения итерации.