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