stdmap

    1熱度

    2回答

    我不得不爲一些舊的,寫得不好的代碼添加新的功能。有50個不同的列表需要在屏幕上顯示和處理,而且它們的當前代碼都是剪切和粘貼的,只需對2種不同類型進行小的修改,一種是DAO數據庫中的列表,另一種是地圖中的。 我編寫了一個搜索類,它提供了每個列表類型的功能和幫助類,以提供搜索所需的基本功能。映射助手類只需要訪問tstring Key,它不需要不同的對象值。但是,我無法得到這個編譯。 由於各種不同的對象

    0熱度

    1回答

    所以,我已經做了相當多的谷歌搜尋試圖找出是否有一些最好的智能指針來處理這個問題,但我還沒有能夠解決一個好選擇。 struct Car { int m_doors; int m_headlights; //etc.. } 可以說我有一些班車。我也有一個std::map<int carkey, Car*>這是垃圾場。 汽車*可以通過一些驅動程序添加到垃圾站,驅動程

    2熱度

    3回答

    目前我已經實現了地圖的,像這樣的值的引用計數緩存: //filename or name of bitmap, reference count, memory location... std::map<std::string, std::pair<long, BITMAP*> > _cache; 使用的std :: multimap中更好的選擇? //filename or name of

    2熱度

    4回答

    我想做一個包裝std :: map的類,並檢查以確保這些鍵是已批准的有效字符串的一個,並且還初始化了映射所有批准的有效字符串的默認值。我有問題讓下標操作工作,特別是它的常量版本。 這裏是我的類原型代碼: #include <set> #include <string> #include <map> class foo { public: foo() {} co

    0熱度

    1回答

    我有這樣的地圖: std::map<time_t, int> 有每天(time_t的)一個值(INT)。有些日子可能具有相同的價值,因此可能不是唯一的。我需要從這張地圖中爲每個唯一的int值執行一次計算。 什麼是最快的(至少CPU使用率)的方法來檢索他們?

    1熱度

    2回答

    gameObjects是std::map<sf::String,VisibleGameObject*>和results是std::map<sf::String,VisibleGameObject*>::iterator。當這種運行: return gameObjects.erase(results); 我預計VisibleGameObject的析構函數運行,這就是: VisibleGameOb

    0熱度

    4回答

    我正在編寫一個數值模擬程序,它使用std :: map存儲一些鍵值對。該地圖用作存儲仿真期間演變的狀態。密鑰的類型是一個整數,對應於該密鑰的值告訴相同密鑰有多少個副本,即std :: map。對於模擬的每一步,我需要計算有多少價值在那裏爲同一個密鑰,所以我會檢查,通過下面的代碼 if (map[key]>0) {do something here with the number of copies

    12熱度

    2回答

    所以,我遇到了std :: map,lambda和stl算法(remove_if)的問題。實際上,與std :: list或std :: vector相同的代碼運行良好。 我測試的例子: #include <map> #include <iostream> #include <algorithm> struct Foo { Foo() : _id(0) {} Foo(

    3熱度

    3回答

    我想通過一個std ::地圖扭轉迭代之前,下面這段代碼:http://www.cplusplus.com/reference/stl/map/rend/ 它說: rend()返回一個反向迭代器,指向map容器中第一個元素之前的元素,它被認爲是它的反向結束。 請注意,rend不是指向開始時的相同元素,而是指向它之前的元素。 map<float,int> m; m.insert(pair<float

    9熱度

    3回答

    我需要根據插入時間(或其他更有效的方式)從std :: map中刪除元素。 該地圖可能會包含數千個元素,如果我存儲時間並迭代地圖以檢查每個元素的時間,它可能最終會相當耗時。 有沒有人有任何好主意,當他們變老時如何從std :: map中擦除元素?