为什么优先级队列有这个签名?
std::priority_queue<int, std::vector<int>, std::greater<int> > third;为什么需要std::vector<int>?例如,如果我只需要将ints存储在队列中?
发布于 2013-10-02 15:23:44
这些是priority_queue的模板参数。第二个是用于存储值的支持容器,在本例中使用向量(这是默认容器)。在上面的示例中,它被传递给您,这样您就可以用std::greater更改默认的比较谓词(即拥有一个最小值位于顶部的priority_queue )。查看类声明这里。
https://stackoverflow.com/questions/19140546
复制相似问题