Python itertools
имеет процедуру islice(seq, start, stop, step)
, которая принимает последовательность и возвращает итератор каждого step
-го значения значений последовательности между start
и stop
.
Имеет ли диапазоныбиблиотека C ++ 20 предоставляет аналогичную функциональность, например, такую как slice
, которая принимает итератор произвольного доступа start
, часовой stop
и значение шага step
и возвращает итератор произвольного доступа, которыйвыполняет итерацию по каждому step
-ому значению между start
и stop
?
Если это не так, может ли такой адаптер итератора быть реализован с использованием примитивов, предоставляемых библиотекой Ranges.
(Я знаю, как я могу реализовать такой адаптер вручную, так что это не вопрос.)