而是用 queue 作为代替,分别是双端队列(deque)和优先队列(priority_queue),前者是首尾皆可插入和删除的队列,以提高程序的准确性。后者是使用堆实现的默认将当前队列最大元素置于队首的容器。可以不用自己手动实现一个队列,STL 的容器中还有两种容器跟队列有关,当需要实现广度优先搜索时,
由于队列(queue)本身就是一种先进先出的限制性数据结构,因此在 STL 中只能通过 front() 来访问队首元素,或是通过 back() 来访问队尾元素。
其定义的写法和其他 STL 容器相同,typename 可以是任意基本数据类型或容器:
queue 翻译为队列,在 STL 中主要则是实现了一个先进先出的容器。
另外有一点注意的是,使用 front() 和 pop() 函数前,必须用 empty() 判断队列是否为空,否则可能因为队空而出现错误。
C++语言中queue的常见用法详解?c++q用法