CArchive::SerializeClass

void SerializeClass (const CRuntimeClass * pRuntimeClass );

Paramètres

pRuntimeClass

Un pointeur vers un objet de classe d'exécution pour la classe de base.

Remarques

Appelez cette fonction membre lorsque vous souhaitez stocker et charger les informations de version d'une classe de base. SerializeClass lit ou écrit la référence à une classe de l'objet CArchive , dépendant de la direction de la CArchive. Utilisez SerializeClass à la place de ReadClass et de WriteClass comme un moyen commode pour sérialiser les objets de la classe de base ; SerializeClass nécessite moins de code et moins de paramètres.

Comme ReadClass, SerializeClass vérifie que les informations de classe archivés soient compatibles avec votre classe runtime. Si elle n'est pas compatible, SerializeClass lève un CArchiveException.

Votre classe runtime doit utiliser DECLARE_SERIAL et IMPLEMENT_SERIAL; sinon, SerializeClass lèvera une CNotSupportedException.

Utilisez la macro RUNTIME_CLASS pour récupérer la valeur pour le paramètre pRuntimeClass . La classe de base doit avoir utilisé la macro IMPLEMENT_SERIAL.

Exemple

class CBaseClass : public CObject {...} ;
Class CDerivedClass : public CBaseClass {...} ;
VOID CDerivedClass::Serialize (C&Archiveamp ; ar)
{
   Si (EI.IsStoring())
   {
      code de //normal pour le stockage des matières //of cet objet
   }
   autre
   {
      code de //normal pour la lecture de contenu //of cet objet
   }

//allow la classe de base pour sérialiser le long de la //with ses informations de version
   AR.SerializeClass(RUNTIME_CLASS(CBaseClass)) ;
   CBaseClass::Serialize(ar) ;
}

Aperçu CArchive |  ; Membres de la classe | Graphique de la hiérarchie

Voir aussinbsp ;CArchive::ReadClass, CArchive::WriteClass, CArchive::GetObjectSchema, CArchive::SetObjectSchema, CArchiveException, C&NotSupportedException

Index