AfxDoForAllObjects
CObject から派生した newで割り当てられたすべてのオブジェクトに対して指定したイテレーション関数を実行します。
void AfxDoForAllObjects(
void (*pfn
)(CObject* pObject,
void* pContext
),
void* pContext
);
パラメーター
pfn
各オブジェクトに対して実行するイテレーション関数を指します。関数の引数は CObject へのポインター、関数の呼び出し元の提供、追加データに void ポインターです。pContext
呼び出し元がイテレーション関数に指定できるオプション データへのポインター。このポインターは NULLです。
解説
スタック、グローバル、または埋め込みオブジェクトは列挙されません。pContext の AfxDoForAllObjects に渡すポインターは、指定したイテレーション関数に呼び出されるたびに渡されます。
[!メモ]
この関数は、 MFC のデバッグ バージョンでのみ使用できます。
使用例
#ifdef _DEBUG
void DoForAllObjects(CObject* pObject, void* pContext)
{
int *pnCount = (int*)pContext;
pObject->AssertValid();
if (pnCount != NULL)
(*pnCount)++;
}
#endif // _DEBUG
#ifdef _DEBUG
//AfxDoForAllObjects will call the function DoForAllObjects
//For each CObject-derived object that is allocated on the heap
int nCount = 0;
AfxDoForAllObjects(DoForAllObjects, &nCount);
TRACE("%d Objects Checked\n", nCount);
#endif
必要条件
ヘッダー : afx.h