これって何を意味するのでしょうか?教えてください。
HEAP[RyuJin.exe]: HEAP: Free Heap block 605a090 modified at 605a0bc after it was freed
これって何を意味するんですか?
Re:これって何を意味するんですか?
以下のコードで同じような結果が得られます
int *a = (int*)malloc(40);
free(a);
a[1] = 9;
freeした領域に書き込んでるのではないでしょうか
int *a = (int*)malloc(40);
free(a);
a[1] = 9;
freeした領域に書き込んでるのではないでしょうか
Re:これって何を意味するんですか?
私はfreeやdeleteの後はポインタを初期化するようにしています
delete hoge;
hoge = NULL;
とか
free(fuga);
fuga = NULL;
こうすれば解放後の代入時にアクセス違反でブレークするのでバグが見つけやすくなります。
delete hoge;
hoge = NULL;
とか
free(fuga);
fuga = NULL;
こうすれば解放後の代入時にアクセス違反でブレークするのでバグが見つけやすくなります。