AfxDoForAllObjects
完成分配了 new从 CObject 派生的任何对象的指定迭代函数。
void AfxDoForAllObjects(
void (*pfn
)(CObject* pObject,
void* pContext
),
void* pContext
);
参数
pfn
指向迭代函数为每个对象执行。 函数参数是指向 CObject 和无效指针到调用方提供给函数的额外数据。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
要求
Header: afx.h