我使用STL列表實現了我的鏈表實現,但是當我在循環中使用擦除函數時,它給出了段錯誤。有人能告訴我爲什麼會發生?C++程序中的分段錯誤
void remove(list<int> &myList,int N){
int k = 1;
list<int>::iterator it;
for(it = myList.begin(); it != myList.end();it++){
if(k == N){
myList.erase(it);
k = 1;
}
else
k++;
}
}
你可以在調試器中運行它來找出哪條線路導致問題,它顯示什麼錯誤? –