0
* 更新: *最後我找到了問題。問題是這樣的:C++對刪除錯誤
pair<int,int> *findPair(){
pair<int,int> *t = new pair<int,int> [10];
for(int i=0;i<11;i++) // error here
{
t[i].first =1;
t[i].second =2;
}
return t;
}
int main() {
pair<int, int> * tt = findPair();
tt[1].first =8;
delete [] tt; // error
return 0;
}
有段故障錯誤。 gcc不會顯示任何超出界限錯誤的警告。在我的原始代碼中,我使用k
作爲pair
數組的索引。 k在每個while循環中改變並且以超出界限的值結束。謝謝你們對由此造成的任何不便深表歉意。
不能給出分段錯誤。我相信你的原始代碼正在做更多的事情。 – Nawaz 2011-04-10 15:36:04
代碼也適用於我。 – birryree 2011-04-10 15:37:35
「在這種情況下,沒有段* [sic] *錯誤,我將稍後編輯以顯示我的問題」;所以你發佈了一個不存在的問題和代碼?感謝您的參與... – 2011-04-10 15:40:31