在c++程式設計的時候,我們有時會遇到,在遍歷map的時候,刪除符合某個條件的元素,如果我們不做任何處理,直接刪除map元素的話,程式會異常終端,提示"expression: map/set iterator not incrementable"。所以如果想在遍歷map的時候刪除元素,必須做一些處理,下面給出一種方法.
原文參考:
#include "stdafx.h"
#include "iostream"
using namespace std;
#include "map"
int main()
int count = 0;
for( std::map::iterator iter = test_map.begin(); iter != test_map.end();)
else
}cout << "use count:" << count << endl;
cout << "after delete " << endl;
for( std::map::iterator iter = test_map.begin();
iter != test_map.end(); ++ iter)
return 0;
}
iterator迭代器怎麼用
迭代器 iterator 有時又稱游標,它是一種物件,能夠用來遍歷容器中的元素,每個迭代器物件代表容器中的確定的位址。我一般在遍歷集合的時候使用迭代器,呼叫iterator 方法會返回集合的迭代器,剛獲得迭代器的時候,迭代器的游標指向第乙個元素的前面,通過hasnext 可以判斷游標的後面還有沒有元...
在路由器上面按IP限速
it168技術 2811路由器來完成,本實驗分兩種方法來做,各有特點。先看下路由器的flash yourname dir directory of flash 1 rw 25438028 oct 22 2010 02 25 58 00 00 c2800nm ipbase mz.124 15.t.bi...
用函式方法實現迭代器
序列就是可迭代的,是乙個迭代器,也就是實現了ienumerable介面的。列表就是記憶體中的元素的集合。容易讀寫,通常以索引的方式訪問。用函式方法實現迭代器 private static ienumerablesequence funcgetnext,t startvalue,funcbool en...