void SerializeClass (const CRuntimeClass * pRuntimeClass );
Parameter
pRuntimeClass
Ein Zeiger auf ein Objekt Runtime-Klasse, der Basisklasse.
Bemerkungen
Rufen Sie diese Memberfunktion auf, wenn Sie zum Speichern und Laden der Versionsinformationen einer Basisklasse. SerializeClass liest oder schreibt den Verweis auf eine Klasse auf das CArchive -Objekt, je nach Richtung der CArchive. Verwenden Sie SerializeClass anstelle von ReadClass und WriteClass als eine bequeme Möglichkeit, die Base-Klasse Objekte serialisieren; SerializeClass erfordert weniger Code und weniger Parameter.
Wie ReadClassob SerializeClass die archivierten Informationen mit der Common Language Runtime-Klasse kompatibel ist. Wenn es nicht kompatibel ist, wird SerializeClass ein CArchiveException ausgelöst.
Die Common Language Runtime-Klasse muss DECLARE_SERIAL und IMPLEMENT_SERIALverwendet; Andernfalls wird SerializeClass eine CNotSupportedException auslösen.
Verwenden Sie das Makro RUNTIME_CLASS zum Abrufen des Werts für den Parameter pRuntimeClass . Die Basisklasse muss das Makro IMPLEMENT_SERIAL verwendet haben.
Beispiel
cBaseClass-Klasse: public CObject {...};
Klasse CDerivedClass: öffentliche CBaseClass {...};
privatevoid CDerivedClass::Serialize (C&Archiveamp; Ar)
{
Wenn (Ar.IsStoring())
{
//normal Code zum Speichern von Inhalt //of dieses Objekts
}
anderes
{
//normal Code zum Lesen von Inhalt //of dieses Objekts
}
der Basisklasse serialisieren zusammen //with die Versionsinformation //Allow
AR.SerializeClass(RUNTIME_CLASS(CBaseClass));
CBaseClass::Serialize(ar);
}
Übersicht über die CArchive | Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp;CArchive::ReadClass, CArchive::WriteClass, CArchive::GetObjectSchema, CArchive::SetObjectSchema, CArchiveException, CNotSupportedException