-1
我都不得不聲明,對最低元素的優先級隊列如下如何在功能參數在C++中
priority_queue<int, vector<int> , greater<vector<int>> > low;
現在我想這個對象傳遞給一些申報優先級隊列功能,爲了這個,我需要在函數頭部聲明,我試圖聲明如下方式
int fun1(priority_queue<int, vector<int> , greater<vector<int>> > min_heap){
return 0;
}
int fun2(priority_queue<int> min_heap){
return 0;
}
; 由於類型不匹配,第二種方法很明顯會給出錯誤,但編譯器不允許採用第一種方法。 請幫幫我。
_in這兩種方法我越來越編譯錯誤_並且,您沒有複製粘貼錯誤消息,因爲?他們應該確切地說出了什麼問題。另外 - 請提供[mcve]。 –
您是否確實打算製作優先隊列的副本,以便通過值傳遞給您的函數?如果沒有,您需要打開C++書籍中的章節,解釋如何使用引用並讀取它。 –
最後一個模板參數用於比較隊列中的元素(在你的情況下是'int's),而不是用於存儲這些元素的容器(也就是,不是'vector's)。 –