2017-03-05 11 views
0
bool comp(pair< pair<int,int>, int > left, pair< pair<int,int>, int > right) { return left.second > right.second;} 
//auto cmp = [](pair< pair<int,int>, int > left, pair< pair<int,int>, int > right) { return left.second > right.second;}; 
priority_queue< pair< pair<int,int>, int >,vector< pair< pair<int,int>, int > >, std::function<bool(pair< pair<int,int>, int >,pair< pair<int,int>, int >) > > q(comp); 

どうすればよいですか?私はクリアしようとするとエラーになります。 この機能を使用して:ペアのカスタムプライオリティキュー<pair <int,int>、int>を宣言していますが、どのようにクリアするのですか?

template <class T, class S, class C> 
void clearpq2(priority_queue<T, S, C>& q){ 
    q=priority_queue<T, S, C>(); 
} 

答えて

0

q = priority_queue< pair< pair<int,int>, int >,vector< pair< pair<int,int>, int > >, std::function<bool(pair< pair<int,int>, int >,pair< pair<int,int>, int >) > > (comp); 
をお試しください
関連する問題