フォト

Google AdSense


  • AdSense
無料ブログはココログ

« 久々に | トップページ | スタンドアローンに »

2007.05.09

メモリリーク

昨晩からメモリリークの疑いがあって色々と試行錯誤をしていたのですが、どうやら自分のところの問題ではなさそう。

COLLADA DOM周りをちょっと疑って、COLLADA DOMのサンプルなんか(ようするに自分の手が入っていないコード)で_CrtSetDbgFlag()してみたのですが、そこで出てるのでそっちの問題か。

Direct3Dのサンプルで知ったのですが、メモリリークの検出では_CrtSetDbgFlag()という関数があるんですね。

http://msdn2.microsoft.com/ja-jp/library/5at7yxcs(VS.80).aspx

http://frog.raindrop.jp/knowledge/archives/000258.html

#include <cstdlib>

#ifdef _DEBUG
#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>

#define new  ::new( _NORMAL_BLOCK, __FILE__, __LINE__ )
#endif

みたいな感じで、

#ifdef _DEBUG
_CrtSetDbgFlag( _CRTDBG_ALLOC_MEM_DF | _CRTDBG_LEAK_CHECK_DF );
#endif

と使うわけね(自分の方では、色々と不都合があってnewの書き換えはしてないけど)。

« 久々に | トップページ | スタンドアローンに »

Programming」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« 久々に | トップページ | スタンドアローンに »