CObject::Serialize

オブジェクトをアーカイブから読み出したり、アーカイブに書き込んだりします。

virtual void Serialize(
   CArchive& ar 
);

パラメーター

  • ar
    シリアル化する CArchive オブジェクトへの参照。

解説

シリアル化しようとするクラスごとに、Serialize 関数をオーバーライドします。 オーバーライドした Serialize 関数では、最初に基本クラスの Serialize 関数を呼び出します。

また、クラスの宣言で DECLARE_SERIAL マクロをし、クラスの実装で IMPLEMENT_SERIAL マクロを使用します。

アーカイブが読み込み用か保存用かを判断するときは、CArchive::IsLoading 関数または CArchive::IsStoring 関数を使用します。

Serialize 関数は、CArchive::ReadObject 関数や CArchive::WriteObject 関数からも呼び出されます。 これらの関数は、CArchive 出力ストリーム演算子 (<<) や入力ストリーム演算子 (>>) とも関係付けられています。

シリアル化の例を参照してくださいシリアル化:オブジェクトのシリアル化

使用例

すべての CObject の例で使われている CAge クラスのリストについては、「CObList::CObList」を参照してください。

void CAge::Serialize(CArchive& ar)
{
   CObject::Serialize(ar);
   if(ar.IsStoring())
      ar << m_years;
   else
      ar >> m_years;
}

必要条件

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

参照

参照

CObject クラス

階層図

その他の技術情報

CObject のメンバー