C++11 обратный цикл for на основе диапазонаC++

Программы на C++. Форум разработчиков
Anonymous
C++11 обратный цикл for на основе диапазона

Сообщение Anonymous »

Существует ли адаптер контейнера, который менял бы направление итераторов, чтобы я мог перебирать контейнер в обратном порядке с помощью цикла for на основе диапазона?

С явными итераторами Я бы конвертировал это:

Код: Выделить всё

for (auto i = c.begin(); i != c.end(); ++i) { ...
в это:

Код: Выделить всё

for (auto i = c.rbegin(); i != c.rend(); ++i) { ...
Я хочу преобразовать это:

Код: Выделить всё

for (auto& i: c) { ...
на это:

Код: Выделить всё

for (auto& i: std::magic_reverse_adapter(c)) { ...
Есть ли такое или мне самому придется писать?

Подробнее здесь: https://stackoverflow.com/questions/854 ... d-for-loop

Вернуться в «C++»