Допустим, я хочу пройти контейнер по кругу:
idx = 0, idx = 1 .. idx = size () — 1, idx = 0, idx = 1 …
Есть ли способ сделать с помощью STD или Boost?
Я знаю, что алгоритмы работают с диапазонами, а не с контейнерами, так что, думаю, мне не повезло, но я просто хотел проверить.
Постскриптум Нет необходимости в ручных реализациях, это тривиально (если вы не забудете про следующие точки: P), просто
curr_idx= (curr_idx+1) % my_cont.size()
Я не знаю ни о какой подобной функции, но этот ответ показывает, как использовать Boost.Iterator создать адаптер итератора, который циклически перебирает коллекцию.
Других решений пока нет …