Deklarieren einer priority_queue in c ++ mit einem benutzerdefinierten Komparator

Ich versuche a zu deklarierenpriority_queue of nodesmitbool Compare(Node a, Node b) als Komparatorfunktion (die außerhalb der Knotenklasse liegt).

Was ich derzeit habe, ist:

priority_queue<Node, vector<Node>, Compare> openSet;

Aus irgendeinem Grund bekomme ichError: "Compare" is not a type name

Änderung der Deklaration zupriority_queue <Node, vector<Node>, bool Compare>

gibt mirError: expected a '>'

Ich habe auch versucht:

priority_queue<Node, vector<Node>, Compare()> openSet;
priority_queue<Node, vector<Node>, bool Compare()> openSet;
priority_queue<Node, vector<Node>, Compare<Node, Node>> openSet; 

Wie soll ich meine korrekt deklarieren?priority_queue?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage