比方說,我有兩個地圖:可能:在具有相同鍵類型的不同映射上設置操作?
typedef int Id;
std::map<Id, std::string> idToStringMap;
std::map<Id, double> idToDoubleMap;
而且我們說,我想這樣做對兩個地圖的按鍵設置操作。 有沒有比創建自定義「插入器」迭代器更簡單的方法?,這樣我可以這樣做:
std::set<Id> resultSet;
set_difference(idToStringMap.begin(), idToStringMap.end(),
idToDoubleMap.begin(), idToDoubleMap.end(), resultSet.begin());
我的實驗結果意味着,有必要創建一個自定義插件,也許一個自定義鍵比較要做到這一點,但我想對於一些有識之士/快捷方式在做之前所以。
謝謝!關於boost迭代器庫和transform_iterator提示的信息使我免於浪費精力。 :) – Catskul 2010-03-24 01:32:58