编译器:
Mingw-w64
用 C++11 下去编
问题(Question):
标题可能下的不太好...
先讲问题,看到几个 priority_queue 在指定自己的比较方法时的写法:
1. 这边的 compare 只是 function
std::priority_queue<Node, std::vector<Node>, bool (*)(Node, Node)>
PQ(compare)
不太理解 bool (*)(Node, Node) 这个的写法是什么,有什么名称吗?
也可以直接用 lambda expression
priority_queue<node, vector<node>, bool (*)(const node &, const node &)>
PQ([](const node &a, const node &b) -> bool {
return a.v > b.v;
});