自定義了一個類,其中有幾個共有成員變量,是char*類型(指針)。構造函數中都初始化為0了。在其中一個成員函數中為這些char* 指針new了個數組。在析構函數中使用delete[]釋放內存。運行結束后出錯,顯示“debug assertion failed”請問為什么?
3 回答

牛魔王的故事
TA貢獻1830條經驗 獲得超3個贊
new的時候char* p = new type[0] 不要出現,也就是判斷下數組是否>0
檢查char* 指針用的時候是否重定向了
delete []的時候 要判斷下指針是否為空
任何時候delete[] p 之后立刻把指針p = NULL;置空,這樣即使你不小心重復delete[] p; 也不會有問題。
- 3 回答
- 0 關注
- 1259 瀏覽
添加回答
舉報
0/150
提交
取消