允许的“队列”底层容器

时间:2013-03-08 00:26:38

标签: c++

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

使用以下语法:

queue<int, list<int> > q;

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

谢谢!

1 个答案:

答案 0 :(得分:6)

C++11 N3485§23.6.3.1/1说:

  

支持操作front(),back(),push_back()和pop_front()的任何序列容器都可以   用于实例化队列。特别是,可以使用list(23.3.5)和deque(23.3.3)。

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