CObject::Serialize
virtual void Serialize( CArchive& ar );
throw( CMemoryException );
throw( CArchiveException );
throw( CFileException );
参数:
说明:
从档案文件中读取该对象或向档案文件中写入该对象。
必须为希望串行化的每个类覆盖Serialize。被覆盖的Serialize首先必须调用基类的Serialize函数。
在类的声明中必须使用DECLARE_SERIAL宏,并且在类的执行过程中也必须使用IMPLEMENT_SERIAL宏。
使用CArchive::IsLoading或CArchive::IsStoring函数,用于决定是否装载或存储了档案文件。
通过CArchive::ReadObject和CArchive::WriteObject来调用Serialize函数。这些函数与CArchive插入操作符(<<)和抽出操作符(>>)相关联。
如果要了解有关串行化的例子,请参阅联机文档“Visual C++程序员指南” 中的“串行化(对象永久化)”。
示例:请参阅ObList::CObList,了解所有CObject示例中使用的CAge类。
// example for CObject::Serialize
void CAge::Serialize( CArchive& ar )
{
CObject::Serialize( ar );
if( ar.IsStoring() ) ar << m_years;
else ar >> m_years;
}