170 похожих чатов

Просто по индексу, как с вектором - не работает. Есть

решение выводить каждый первый элемент, разрушать его, выводить следующий, как первый и т.д. Но может есть какое-то другое решение?

15 ответов

10 просмотров

У queue нарошно убраны итераторы и осложнён доступ к его контейнеру. В ходу способ, предполагающий копирование очереди и деструктивные операции над копией.

Anton-Bondariev Автор вопроса
Anton Bondariev
хорошо, спасибо за совет)

Есть идея ещё лучше. Раз уж у нас есть такие требования, то лучше уж вместо queue использовать deque. Это тоже самое, но без ограничений.

Anton-Bondariev Автор вопроса

какие отличия между ними помимо ограничений? в двух словах

Anton Bondariev
какие отличия между ними помимо ограничений? в дву...

queue - это интерфейс к контейнеру. По умолчанию таким контейнером является deque. Отсюда следует, что нет ничего такого, что умел бы queue, но не умел бы deque. На самом деле, мне вообще не вполне понятно логика, зачем queue есть в стандартной библиотеке. Пусть коллеги нам подскажут.

int main (int argc, char argv []) { std::queue<int> queue {std::deque<int> {1,2,3,5}}; std::deque<int> *deq = reinterpret_cast<std::deque<int> * > (&queue); for (int i = 0; i < queue.size() ; ++i) { std::cout << deq->at(i); } return 0 } ну можно конечно привести. но бить за такое будут больно и долго.

Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!

Aleksei Kudakov
int main (int argc, char argv []) { std::queue...

Как вариант: https://gcc.godbolt.org/z/PaKrcEqdY А вот в законности такого трюка я уже не уверен: https://gcc.godbolt.org/z/PaKrcEqdY

А не используй queue. Бесполезное гавно

Нет, это UB

Ilya Zviagin
Нет, это UB

нет, это не UB в libstdc++ и libc++ https://godbolt.org/z/nTT3ozM39

Sergey Kaniskin
нет, это не UB в libstdc++ и libc++ https://godbol...

Разумеется UB. Соответствие StandardLayoutType не дает права на такие реинтерпретации.

В отладке? Сам каст останется легальным недиагностируемым.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта