术语 | CArchive::SerializeClass | ||
释义 | CArchive::SerializeClass void SerializeClass(const CRuntimeClass* pRuntimeClass); 参数:
说明: 当想存储和装载一个基类的版本信息时,调用此成员函数。SerializeClass读或对CArchive对象写一个类的参考,取决于CArchive的方向。使用SerializeClass来代替ReadClass和WriteClass,可以使得更方便地串行化基类对象。因为SerializeClass需要较少的代码和参数。 像ReadClass一样,SerializeClass证明了归档文件信息与的例程类兼容。如果不兼容,则SerializeClass将一个CArchiveException。 运行类必须使用DECLARE_SERIAL和IMPLEMENT_SERIAL,否则,SerializeClass将会一个CNotSupportException。 使用RUMTIME_CLASS宏,恢复pRuntimeClass参数的值。基类必须已经使用IMPLEMENT_SERIAL宏。 示例: class CBaseClass:public CObject{...}; class CDerivedClass:public CBaseClass{...}; void CDerivedClass::Serialize(CArchive& ar) { if(ar.IsStoring( )) { //normal code for storing contents //of this object } else { //normal code for reading contents //of this object } //allow the base class to serialize along // with its version information ar.SerializeClass(RUNTIME_CLASS(CBaseClass)); CBaseClass::Serialize(ar); } 请参阅: CArchive::ReadClass, CArchive::WriteClass, CArchive::GetObjectSchema, CArchive::SetObjectSchema, CArchiveException, CNotSupportedException |
||
随便看 |
|
MFC类库中文详解手册包含4274条MFC类库参考词条,基本涵盖了Microsoft基本类库中的类、全局函数、全局变量和宏的内容,是计算机编程的有利工具。