CArchive::ReadClass

CRuntimeClass* ReadClass(
       const RuntimeClass* pClassRefRequested = NULL,
       UINT* pSchema = NULL,
       DWORD* obTag = NULL
      );
  throw(CArchiveException);
  throw(CNotSupportedException);

返回值:指向CRuntimeClass结构的指针。

参数:
pClassRefRequested指向CRuntimeClass结构的指针,此结构对应于所需要的类的参考。可以为NULL。
pSchema指向原先存储的运行时类的大纲的指针。
obTag代表对象的唯一标识的数值。通过ReadObject的实现,在内部使用。只用于高级编程。obTag通常应为NULL。

说明:
调用此成员函数来读取一个原先存储在WriteClass中的类的参考。
如果pClassRefReguested不为NULL,ReadClass证明了归档文件类信息与例程类是兼容的。
如果不兼容,ReadClass将产生一个CArchiveException。
例程必须使用DECLARE_SERIAL和IMPLEMENT_SERIAL,否则,ReadClass将产生一个CNotSupportedException。
如果pSchema为NULL,则存储类的大纲可通过调用CArchive::GetObjectSchema来恢复,否则,*pSchema将会包含原先存储的运行时类的大纲。
可以使用SerializeClass来代替ReadClass,它可以处理类参考的读和写。

请参阅:
CArchive::WriteClass, CArchive::GetObjectSchema, CArchive::SetObjectSchema, CArchiveException, CNotSupportedException, CArchive::SerializeClass