Итерация по std::queue
Стандартная библиотека C предоставляет ряд адаптеров контейнеров, одним из которых является очередь. Как указано в связанной документации, этот адаптер использует Deque для базового хранилища, которое, согласно той же странице документации, предоставляет «итераторы произвольного доступа». Однако класс std::queue не предоставляет доступ к этим итераторам, и стандартного способа обойти эту проблему не существует. Это связано с тем, что:
Смысл стандартных адаптеров контейнеров заключается в обеспечении минимального интерфейса.
Это означает, что std::queue следует использовать для постановки элементов в очередь и удаления из нее, а не для итерации. над его содержимым. Если вам нужно перебрать очередь, вы можете напрямую использовать двухстороннюю очередь. Он предоставит вам всю функциональность очереди, а также позволит вам перебирать ее.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3