푸시()에서 제대로 작동하지 않는 기능을 비교C++ 사용자 정의와 우선 순위 큐 나는이 같은 C++ 우선 순위 큐를 정의
bool mygreater(pair<int,int> v1, pair<int,int> v2) {
return v1.first > v2.first;
}
그러나 우선 순위 큐에 int 쌍의 벡터를 푸시하려고하면 다음을 포함한 많은 오류가 계속 발생합니다.
error: no matching function for call to ‘std::priority_queue<std::pair<int, int>, std::vector<std::pair<int, int> >, bool (*)(std::pair<int, int>, std::pair<int, int>)>::push(std::vector<std::pair<int, int> >&)’ frontier.push(temp);
우선 순위 대기열로 이동하려는 시도에서 오류의 원인을 아는 사람이 있습니까? 어떤 도움이라도 대단히 감사합니다.
어떻게 현재 int 쌍의 벡터를 대기열로 푸시하고 있습니까? –
기본적으로 다음과 같습니다. temp.push_back (make_pair (sr, sc)); frontier.push (임시); –