mfc プログラムで追跡しようとしているメモリ リークがあります。通常、私は次のようなことをします:
ヘッダファイル
// Leak Detection
#if defined(WIN32) && defined(_DEBUG)
#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
#endif
cpp ファイル
// Leak detection
#if defined(WIN32) && defined(_DEBUG) && defined(_CRTDBG_MAP_ALLOC)
#ifdef DEBUG_NEW
#undef DEBUG_NEW
#endif
#define DEBUG_NEW new( _NORMAL_BLOCK, __FILE__, __LINE__ )
#define new DEBUG_NEW
#endif
この手法はほとんどのファイルでうまく機能しますが、ドキュメントなどの一部のファイルに含めると、次のエラーが表示されます: error C2661: 'CObject::operator new' : no overloaded function takes 4 arguments
ここでの解決策は何ですか?どこかで #undef-ing new する必要がありますか?
ありがとう!