« チャンピオン(26号) | メイン | チャンピオン(27号) »

Access Violation

VCのデバッグモードで動作テストして問題なかったのに
直接起動するとAccess Violationで落ちるというのはなぜだろう・・・?

しかも落ちるのがnewでメモリを確保している箇所全般なのだから
ますますわかりません。
エラーになるところをコメントアウトすると、その次にnewしているところで落ちるという・・・。

コメント

別のメモリでのバッファオーバーラン等により、メモリの管理領域が壊れているため、メモリの確保などでエラーが発生するのではないでしょうか。
デバッグバージョンで動作するのにリリースバージョンで動作しないなどは、最適化などによりメモリ配置が代わり、未初期化で参照している箇所の値が変わったなどが考えられますね。

ええ、やはり初期化漏れが原因なのだろうなとは思います。

ある程度発生箇所が絞り込めてきたので
もう少し詳しく調べれば解決できそうな気がしてきました。

これは解決しました。
newで配列を確保した後、配列の要素数を超えてアクセスしていたせいでした。

わかってしまえば単純なミスですけど
単純なほど見つけにくい場合もあるので油断大敵です。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)