CArchive クラス

オブジェクトの複雑なネットワークを永続的なバイナリ形式 (通常はディスク ストレージ) に保存し、オブジェクトを削除した後も保持できます。

class CArchive

解説

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

オブジェクトは、後で 2 次記憶から読み込みができ、メモリに再構築できます。 このようにデータを永続化させるプロセスを "シリアル化" と呼びます。

アーカイブ オブジェクトは、一種のバイナリ ストリームとして考えることができます。 入出力ストリームと同じように、アーカイブをファイルと関連付け、バッファーを使用してストレージにデータを書き込んだり、バッファーを使用してストレージからデータを読み込んだりできます。 入出力ストリームでは連続する ASCII 文字を処理しますが、アーカイブでは効率的な非冗長形式のバイナリ オブジェクト データを処理します。

CArchive オブジェクトを作成する前に、CFile オブジェクトを作成する必要があります。 また、アーカイブの読み込みや格納のステータスが、ファイルのオープン モードに対応している必要があります。 アクティブにできるアーカイブは、各ファイルにつき 1 つです。

CArchive オブジェクトを構築している場合は、このオブジェクトを開いているファイルを表す CFile クラス (または派生クラス) のオブジェクトに結び付けます。 アーカイブに読み込み、または格納をするかどうかも指定します。 CArchive オブジェクトは、プリミティブ型だけでなく、シリアル化のために設計された CObject の派生クラスのオブジェクトも処理できます。 シリアル化できるクラスには、通常 Serialize メンバー関数があり、DECLARE_SERIAL マクロおよび IMPLEMENT_SERIAL マクロを使用します。これについては、「CObject クラス」を参照ください。

オーバーロードされた出力ストリーム演算子 (<<) と入力ストリーム演算子 (>>) は、プリミティブ型と CObject の派生クラスの両方をサポートできるアーカイブ プログラミング インターフェイスです。

CArchive では、MFC Windows ソケット クラスの CSocketCSocketFile を使用するプログラミングもサポートします。 IsBufferEmpty メンバー関数は、MFC Windows ソケット クラスを使用したプログラミングをサポートします。

詳細についてCArchive、記事を参照してくださいシリアルWindows ソケット:アーカイブとソケットを使用して

必要条件

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

参照

参照

階層図

CFile クラス

CObject クラス

CSocket クラス

CSocketFile クラス

その他の技術情報

CArchive のメンバー