Important This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer


Reads object data from the archive and constructs an object of the appropriate type.

CObject* ReadObject(
   const CRuntimeClass* pClass 


A constant pointer to the CRuntimeClass structure that corresponds to the object you expect to read.

Return Value

A CObject pointer that must be safely cast to the correct derived class by using CObject::IsKindOf.


This function is normally called by the CArchive extraction (>>) operator overloaded for a CObject pointer. ReadObject, in turn, calls the Serialize function of the archived class.

If you supply a nonzero pClass parameter, which is obtained by the RUNTIME_CLASS macro, then the function verifies the run-time class of the archived object. This assumes you have used the IMPLEMENT_SERIAL macro in the implementation of the class.


See the example for CArchive::WriteObject.

See Also

CArchive Overview | Class Members | Hierarchy Chart | CArchive::WriteObject | CObject::IsKindOf

© 2016 Microsoft