Re: [STL ] 關於vector存取元素
不好意思,還是一樣的問題@@
以為解決了,結果其實並沒有
這一次我把他簡化了,我寫成一個類似的小程式,麻煩有經驗的大大
幫忙看一下問題是出在哪裡
我新建了一個類別
class aaa{
public:
void SetV(int val){v.push_back(val);}
vector<int> GetV(){return v;}
void VClear(){v.clear();}
private:
vector<int> v;
};
我打算做link list,list中有許多物件,物件內有vector
在輸作資料後,最後要將輸入的資料讀取出來
跟之前一下,compiler時會過,但執行時則會出錯
int count=0;
int num=0;
aaa a;
for (int i=0;i<3;++i)
a.SetV(i);
list<aaa> L;
L.push_back(a);
a.VClear();
for (int i=10;i>7;--i)
a.SetV(i);
L.push_back(a);
for (list<aaa>::iterator i=L.begin(); i!=L.end(); ++i){
MessageBox::Show("count="+(++count).ToString());
for(vector<int>::iterator j=i->GetV().begin();j!=i->GetV().end();++j){
num=*j;
MessageBox::Show(num.ToString());
}
}
執行時會出現錯誤視窗,顯示的exception是vector iterator incompitable
所以我想問題應該就出在這個地方吧,請問我該怎麼修改呢,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.18.48.28
推
07/29 15:51, , 1F
07/29 15:51, 1F
→
07/29 15:51, , 2F
07/29 15:51, 2F
→
07/29 15:51, , 3F
07/29 15:51, 3F
→
07/29 15:54, , 4F
07/29 15:54, 4F
→
07/29 17:02, , 5F
07/29 17:02, 5F
→
07/29 17:03, , 6F
07/29 17:03, 6F
推
07/29 18:50, , 7F
07/29 18:50, 7F
推
07/29 18:54, , 8F
07/29 18:54, 8F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 2 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章