簡體   English   中英

調試斷言失敗:_CrtIsValidHeapPointer(block)

[英]Debug Assertion Failed: _CrtIsValidHeapPointer(block)

我寫了一個模擬矩陣的代碼。 這個矩陣有一個指向指針的指針,實際上是一個由鏈表組成的數組。 我有兩個-一個用於行,第二個用於列。 每個數組都將其矩陣行/列首位索引,列表是rox / col中的其余數字。

我可以發送代碼,但是它不短。

我的問題是,在我執行了一些操作之后,我試圖在最后刪除矩陣-它使我出現了此失敗問題。 我嘗試更改代碼,但發現問題出在這里:

delete this->rowsArray;
this->rowsArray = newRowArray; ->here


delete this->colsArray;
this->colsArray = newColArray; ->here

rowsArray廣告colsArray的初始化如下:

rowsArray = new matrixNode*[lastRowPlace+1]; colsArray = new matrixNode*[lastColPlace+1];

同樣關於newColsArray和row ...我希望你能給我一個建議,因為我真的不知道該怎么辦:(

**只是忘記說問題只是在析構函數中突然出現...

如果定義了指針,例如new T* [size]

您應該使用delete[]而不是delete

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM