CObject::operator delete
ライブラリのリリース バージョンでは、[削除] 演算子は、演算子を new割り当てたメモリを解放します。
void PASCAL operator delete(
void* p
);
void PASCAL operator delete(
void* p,
void* pPlace
);
void PASCAL operator delete(
void* p,
LPCSTR lpszFileName,
int nLine
);
解説
デバッグ バージョンでは、[削除] 演算子は、メモリ リークを検出するように設計された割り当て監視設定に参加します。
コード行を使用する場合
#define new DEBUG_NEW
.cpp ファイルの実装のいずれかに、を [削除] の 3 番目のバージョン使用する前に、新しいレポートに割り当てられたブロックでファイル名と行番号を格納する。 パラメーターの指定を気にする必要はありません; マクロは、がによって行われます。
デバッグ モードで DEBUG_NEW を使用しない場合でも、上記のソース ファイル行番号を報告せずによって、メモリ リークを取得します。
演算子をオーバーライド **new[削除]**と、この診断機能を放棄します。
使用例
CObject の例で使用されている CAge のクラスのリストについては、CObList::CObList を参照してください。
void CAge::operator delete(void* p)
{
free(p);
}
void CAge::operator delete(void *p, LPCSTR lpszFileName, int nLine)
{
UNREFERENCED_PARAMETER(lpszFileName);
UNREFERENCED_PARAMETER(nLine);
free(p);
}
必要条件
ヘッダー : afx.h