Кольцевой список, используя контейнер list

250
22 мая 2017, 00:04

Проблема вот в чём, мне необходимо создать двусвязный кольцевой список используя контейнер list. Двусвязный он по умолчанию, а вот кольцевая связь никак не удается, компилятор отвергает подобный вариант:

myList.front._Prevnode = myList.back;
myList.back._Nextnode = myList.front;

получаю соответсвенные ошибки:

left of .Prevnode must have class/struct/union
left of .Nextnode must have class/struct/union

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

Возможно нужно использовать итератор?

Answer 1

В стандарте вообще не описаны никакие члены-указатели на следующий и предыдущий элементы, так что в самом лучшем случае у вас будет привязка к конкретной реализации.

Далее - вопрос: зачем? Чего вы хотите добиться? Ведь при этом вы, например, теряете возможность работы с итераторами - нет больше ни начала списка, ни его конца!

Как по мне - наиболее простой способ получения требуемой вам функциональности (какой??) - написать адаптер...

READ ALSO
Не работает конструкция

Не работает конструкция

Здравствуйте! В первый раз столкнулся с такой конструкцией, как она называется и почему не работает:

275
Как создать текст с контуром на изображении RGB в буфере?

Как создать текст с контуром на изображении RGB в буфере?

Есть буфер с байтами RGB (раcжатый jpeg кадра с веб-камеры, без альфы, естественно)Нужно заменить часть этих байт (правый верхний угол) байтами...

366
Вызов шаблонной функции через Qtconcurrent::run

Вызов шаблонной функции через Qtconcurrent::run

Есть шаблонная функция:

438