[問題] vector容器裡erase的問題
我是用VC++2005 作練習
我的需求是
步驟一:要建立一個vector並輸入1~20的數字
步驟二:建立完後再從1~20一個一個刪除 有點蠢的練習XD
步驟一的code:
vector<int> foo(20);
vector<int>::iterator itr;
int n =1;
for (itr=foo.begin();itr!=foo.end();itr++)
{
*itr=n++;
}
到這邊沒問題
但是步驟二:
vector<int>::iterator iii;
for (iii=foo.begin();iii!=foo.end();iii++)
{
foo.erase(iii);
}
執行值會當機 也就是當erase第一個值後就當了
想請問是為什麼??
及如何解決??
謝謝指教
--
賺錢才是真的
努力讀書只是晚幾年去賣雞排罷了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.121.37
※ 編輯: meteor007 來自: 140.123.121.37 (12/14 15:56)
推
12/14 16:00, , 1F
12/14 16:00, 1F
推
12/14 16:00, , 2F
12/14 16:00, 2F
推
12/14 16:08, , 3F
12/14 16:08, 3F
推
12/14 16:10, , 4F
12/14 16:10, 4F
→
12/14 16:11, , 5F
12/14 16:11, 5F
→
12/14 16:12, , 6F
12/14 16:12, 6F
→
12/14 16:12, , 7F
12/14 16:12, 7F
→
12/14 16:15, , 8F
12/14 16:15, 8F
→
12/14 16:35, , 9F
12/14 16:35, 9F
→
12/14 16:36, , 10F
12/14 16:36, 10F
推
12/14 16:37, , 11F
12/14 16:37, 11F
推
12/14 16:42, , 12F
12/14 16:42, 12F
→
12/14 16:44, , 13F
12/14 16:44, 13F
→
12/14 16:46, , 14F
12/14 16:46, 14F
推
12/14 16:50, , 15F
12/14 16:50, 15F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章