CArchive::WriteObject
存储指定的 CObject 到存档。
void WriteObject(
const CObject* pOb
);
参数
- pOb
用于存储对象的常数的指针。
备注
此函数由为 CObject重载的 CArchive 插入(<<) 运算符通常称为。 WriteObject,然后,调用存档的选件类的 Serialize 功能。
必须使用 IMPLEMENT_SERIAL 启用宏的存档。 WriteObject 写入存档的ASCII类名。 此类名之后验证在加载过程。 特定编码模式来防止类名不必要地重复对于选件类的多个对象。 此模式还防止大于指针的目标对象的冗余存储。
确切的对象编码方法(ASCII类名的包含显示)是实现详细信息,并可能会在库的未来版本。
备注
在开始存档之前,请完成创建,删除和更新您的所有对象。如果使用对象修改,组合存档您的存档将损坏。
示例
有关选件类 CAge的定义,对于 CObList::CObList请参见示例。
CFile myFile(_T("My__test__file.dat"),
CFile::modeCreate | CFile::modeReadWrite);
CAge age(21), *pAge;
// Create a storing archive.
CArchive arStore(&myFile, CArchive::store);
// Write the object to the archive
arStore.WriteObject(&age);
// Close the storing archive
arStore.Close();
// Create a loading archive.
myFile.SeekToBegin();
CArchive arLoad(&myFile, CArchive::load);
// Verify the object is in the archive.
pAge = (CAge*) arLoad.ReadObject(RUNTIME_CLASS(CAge));
ASSERT(age == *pAge);
要求
Header: afx.h