我有一個std::tr1::unordered_map<int, A> map;
其中A是一個帶有成員變量(int x)的類。C++:使用boost lambda在std :: tr1 :: unordered_map中獲取最大值
我想找到地圖中的關鍵字i,使得map [i] .x是最大的。
我知道我可以用std :: max_element寫一個仿函數。我該怎麼做,而不是使用 boost lambda(我試圖去學習它)?我沒有C++ 0x。
作爲一個額外的問題,如果我已經類A定義如下的內容:
類A { INT X; int y; };
我想找到最大值w.r.t x(如果最大值爲0,找到y的最大值)。 同樣,一種解決方案是遍歷地圖的元組(保持內存中最大值爲 )。有沒有辦法修改max_element來做到這一點?
我希望看到一個鳳凰解決方案,謝謝。 – Cubbi