История изменений
Исправление vtVitus, (текущая версия) :
если хранятся не цифры, а нормальные объекты, то проще всего делать так. Адрес элемента хранится в массиве и вставляется по циклу. Т.е. первая вставка перезаписывает 0 элемент, вторая 1 и т.п. Соответственно получение адреса элемента по индексу это что-то вроде get(i) = p[i + count % len], где count это кол-во вставок, len это длина твоего статической очереди.
Исходная версия vtVitus, :
если хранятся не цифры, а нормальные объекты, то проще всего делать так. Разнести хранение объекта и хранение индекса. Объект хранится в списке, соответственно добавление элемента это постановка в конце списка и удаление начальное. Адрес элемента хранится в массиве и вставляется по циклу. Т.е. первая вставка перезаписывает 0 элемент, вторая 1 и т.п. Соответственно получение адреса элемента по индексу это что-то вроде get(i) = p[i + count % len], где count это кол-во вставок, len это длина твоего статической очереди.