次の方法で共有


CDumpContext クラス

人が読み取ることができる形式でテキストを出力するために、ストリームに依存した診断出力をサポートします。

class CDumpContext

解説

CDumpContext には、基本クラスはありません。

CDumpContext の組み込みオブジェクトである afxDump オブジェクトを使って、大部分のダンプを行うことができます。 afxDump オブジェクトを利用できるのは、Microsoft Foundation Class ライブラリのデバッグ バージョンだけです。

メモリ診断サービスの多くは、出力に afxDump を使用しています。

定義済みの afxDump オブジェクトは、概念的には cerr ストリームと同じです。Windows の環境では、出力は Windows 関数の OutputDebugString を使ってデバッガーに送られます。

CDumpContext クラスには、CObject へのポインターに対するオーバーロードされた出力ストリーム演算子 (<<) があります。この演算子を使って、オブジェクトのデータをダンプできます。 派生オブジェクトで独自のダンプ フォーマットが必要なときは、CObject::Dump をオーバーライドします。 ほとんどの MFC (Microsoft Foundation class) にはオーバーライドできる Dump メンバー関数が実装されています。

CStringCTimeCTimeSpan などの CObject からの派生クラス以外のクラスは、固有の CDumpContext のオーバーロードされた出力ストリーム演算子を持ちます。これらは、CFileStatusCPointCRect のような構造体を使います。

IMPLEMENT_DYNAMIC または IMPLEMENT_SERIAL マクロを組み込んで、クラスを実装したときは、CObject::Dump 関数を使って CObject 派生クラス名を表示できます。 それ以外の場合は、CObject が表示されます。

CDumpContext クラスは、ライブラリのデバッグ バージョンでもリリース バージョンでも利用できます。しかし、Dump メンバー関数は、デバッグ バージョンだけで定義されます。 #ifdef _DEBUG/#endif ステートメントに囲まれた診断コードで独自の Dump メンバー関数を使います。

独自の CDumpContext オブジェクトを作成する場合は、ダンプの出力先になる CFile オブジェクトをあらかじめ作成する必要があります。

CDumpContext の詳細については、「MFC のデバッグ技術」を参照してください。

#define _DEBUG

必要条件

**ヘッダー:**afx.h

参照

参照

階層図

CFile クラス

CObject クラス

その他の技術情報

CDumpContext のメンバー