UINT GetObjectSchema ( );
Valeur de retour
Pendant la désérialisation, la version de l'objet est lu.
Remarques
Appelez cette fonction à partir de la fonction Serialize pour déterminer la version de l'objet qui est actuellement en cours de désérialisation. Appel de cette fonction est valide uniquement lorsque l'objet CArchive chargé (CArchive::IsLoading retourne zéro). Il devrait être le premier appel à la fonction Serialize et appelée une seule fois. Une valeur de retour (UINT) – 1 indique que le numéro de version est inconnu).
Un CObject-classe dérivée peut utiliser VERSIONABLE_SCHEMA combinées (à l'aide de bits ou) avec la version du schéma lui-même (dans la macro IMPLEMENT_SERIAL ) pour créer un « objet de versionnables, « c'est un objet dont fonction de membre Serialize peut lire plusieurs versions. La fonctionnalité de cadre par défaut (sans VERSIONABLE_SCHEMA) est pour lever une exception lorsque la version est incorrect.
Exemple
IMPLEMENT_SERI&AL (CMyObject, CObject, VERSIONABLE_SCHEMA|1)
VOID CMyObject::Serialize (CArchiveamp ; ar) {
Si (EI.IsLoading())
{
nLa int = ar.GetObjectSchema() ;
Switch(nVersion)
{
case 0 :
/ / lu dans la version précédente de / / cet objet
Pause ;
cas 1 :
/ / lu dans la version actuelle de
/ / Cet objet
Pause ;
par défaut :
/ rapport version inconnue / / cet objet
Pause ;
}
}
autre
{
/ / Normal de stocker le code va ici
}
}
Aperçu CArchive |  ; Membres de la classe | Graphique de la hiérarchie
Voir aussinbsp ;CObject::Serialize, CObject::IsSerializable, IMPLEME&NT_SERIAL, DECLARE_SERIAL, CArchive::IsLoading