刪除指向分配爲new []的數組的指針是「未定義的行爲」。我只是好奇,爲什麼第一個delete在下面的代碼導致堆腐敗如果析構函數被定義,否則沒有任何反應(正如我虛心預計)。使用Visual Studio 8和GNU GCC版本4.7.2(http://www.compileonline.com/compile_cpp11_online.php)進行測試。 struct A
{
//~A
我今天遇到了很多麻煩,跟蹤了一個真正逃避腐敗的錯誤。 我想如果我真的注意到了警告,我不會很難找到它,但是因爲我沒有找到相關信息,說明爲什麼這個特定的警告彈出,我讓它滑動,這是一個錯誤。 因此,這裏的牽連警告的Visual Studio 2013給我: warning C4316: object allocated on the heap may not be aligned 16
並將它傳遞的