掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VC++ releaseモードとdebugモードの動作差異について (ID:64874)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
デバッグモード時はデバッグ情報が追加されたり、デバッグ用の領域が 内部でこっそり取られたりするはずなのでメモリ上での変数の配置が リリースモードとは変わると思います。デバッグ時はこの辺の表から 見えない情報のお陰でメモリを壊したりしていても表面化しない場合が 多いです。特にローカル変数なんかはリリースモード時とデバッグモード時で 非初期化状態が違うはずですからその辺が原因になったり、 メモリ上の変数の配置が変わるためにスタック内部の状況に変化がある場合も ありえると思います。スタック内部の状況に動作が左右されないようにするのが 本来の有るべき姿ですから、この状態はすなわち不具合と言えます。 その他、リンクされているライブラリがデバッグ用だとか諸々違うわけですから 既に挙げた内容だけが原因とは限りません。 デバッグ版とリリース版は意図通りにプログラミングされていれば、 動作は同じになるはずですけれど、バイナリファイルとして見たときは 別物になると思います。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.