アプリケーションの終了中に異常なヒープ破壊エラーが発生しました。コード内に "std :: vector"があり、削除されています。私の "ref_count"変数。私がstd :: vectorを持っていなければ、クラッシュはありません。 std :: vectorがあり、ref_count(メモリリークを引き起こす)を削除しないと、ヒープクラッシュが発生します。私は可能な限り小さなテストケースを作っていますが、残念ながらここでは大きすぎてhttp://codepad.org/USIPjPHJにあります。問題になる可能性のあることについて誰もが提案していますか?std :: vectorが存在するときにアプリケーションのヒープ破壊を引き起こすポインタ
出力ウィンドウでこれのヒープ例外を発生させてクラッシュします。
HEAP [CrashTest.exe]:HEAP:それはWindowsがCrashTest.exeにブレークポイントをトリガした を解放された後に空きヒープブロック6d4c30は6d4c58に変更します。
これは、CrashTest.exeまたはそれがロードしたDLLのバグを示す、ヒープの破損が原因である可能性があります。
これは、CrashTest.exeにフォーカスがある間にユーザーがF12キーを押したことが原因である可能性もあります。
出力ウィンドウには、より多くの診断情報が含まれている場合があります。
私のIDEは(も非SP1上で試してみました)のVisual Studio 2010 SP1であるが、それは問題を引き起こしてはいけません。
トピックに質問があり、正しいものであれば回答を受け入れます。私の質問とその回答をチェックすると、私はいつもこれを受け取るわけではありません。 – chadb
メンバーカウンタを動的に割り当てるのはなぜですか?それは正しく見えません。 – twsaef
@chadb:あなたが与えた同様の回答に対する回答で指摘されたように、回答が十分でない理由を説明し、明確化や追加情報を求めるのはあなた次第です。悪い答えは、質問をしている人の過ちよりもしばしばです。 –