允许的"队列"底层容器

JAS*_*SON 0 c++

队列允许的底层容器是什么?

在以下语法中:

queue<int, list<int> > q;
Run Code Online (Sandbox Code Playgroud)

列表是唯一允许的一个?(列表中,deque,vector)

谢谢!

chr*_*ris 6

C++ 11N3485§23.6.3.1 /1说:

支持操作front(),back(),push_back()和pop_front()的任何序列容器都可用于实例化队列.特别地,可以使用列表(23.3.5)和双端(23.3.3).

因此,只要它是一个序列容器并具有适当的成员函数,它就可以工作.但是,操作被委托给底层容器,因此在有性能要求时应该记住这一点.

  • 但是`vector`没有pop_front. (2认同)