C ++ Vector /优先级队列列表?

时间:2010-08-13 21:18:07

标签: c++ list stl vector priority-queue

为什么C ++不允许这样的东西?

我需要有多个优先级队列,其数量将在运行时确定。

无法编译

std::vector<std::priorityqueue<Class A>>

有更好的方法吗?

2 个答案:

答案 0 :(得分:6)

正确的代码是:

std::vector<std::priority_queue<A> >

请注意Class不属于A旁边,priority_queue中有下划线,两个右尖括号之间需要一个空格(>>被解析为右移运算符)。

这还要求A小于可比较(如果不是,则必须提供优先级队列使用的比较函数)。

答案 1 :(得分:1)

这应该可以正常工作。语法应该是:

std::vector<std::priority_queue<A> >

(注意末尾附近的空格(“”)。