AfxDoForAllClasses
アプリケーションのメモリ空間内のすべてのシリアル化可能な CObject 派生クラスに対して反復関数の実行を呼び出します。
void AFXAPI AfxDoForAllClasses(
void (*pfn
)(const CRuntimeClass* pClass,
void* pContext
),
void* pContext
);
パラメーター
pfn
各クラスで実行する反復関数へのポインター。 関数の引数は、CRuntimeClass オブジェクトへのポインターと、呼び出し側が関数に渡す付加的なデータへの void 型のポインターです。pContext
呼び出し側が反復関数に引き渡せる省略可能なデータへのポインター。 このポインターは NULL でもかまいません。
解説
シリアル化可能な CObject 派生クラスは、DECLARE_SERIAL マクロで派生させたクラスです。 pContext で AfxDoForAllClasses に渡されるポインターは、呼び出しのたびに指定された反復関数に渡されます。
注意
この関数は MFC ライブラリのデバッグ環境でしか動作しません。
使用例
#ifdef _DEBUG
void DoForAllClasses(const CRuntimeClass* pClass, void* pContext)
{
ASSERT(pContext != NULL);
CString *pStr = (CString *)pContext;
*pStr += pClass->m_lpszClassName;
*pStr += _T("\n");
}
#endif
#ifdef _DEBUG
CString cStr;
AfxDoForAllClasses(DoForAllClasses, &cStr);
AfxMessageBox(cStr);
#endif
必要条件
**ヘッダー:**afx.h