Обратный метод С++ для поддиапазона, не найденного после фрагментирования спискаC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Обратный метод С++ для поддиапазона, не найденного после фрагментирования списка

Сообщение Anonymous »


Я столкнулся со странным поведением: если вы создаете фрагментированное представление списка по 2 элемента, а затем пытаетесь напечатать переднюю и заднюю часть в цикле for с диапазоном, передний метод будет работать, но задний метод не будет. Это приведет к ошибке компилятора, сообщающей, что для создания экземпляра метода .back() требуется двунаправленный итератор. Я что-то упустил?

Код, воспроизводящий ошибку

#include #include #include #include интервал основной() { std::list nums_list = {0, 1, 2, 3, 4, 5}; автоматический звонок = список_номеров | станд::views::chunk(2); for (автопара: rng) { std::cout
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

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