до втрати SerializeClass (константа CRuntimeClass * pRuntimeClass );
Параметри
pRuntimeClass
Вказівник на час виконання клас об'єкта для базового класу.
Зауваження
Телефонуйте цієї функції-члени, коли ви хочете, щоб зберегти та завантажити відомості про версію базового класу. SerializeClass прочитати або записати посилання до класу з CArchive об'єктом, залежно від напрямку CArchive. Використовувати SerializeClass місце в ReadClass і WriteClass як це зручний спосіб сериализации об'єктів бази класу; SerializeClass потребує менше коду і менше параметрів.
Як ReadClass SerializeClass перевіряється архівних клас інформація сумісні з вашого класу виконавчі файли. Якщо це не сумісні, SerializeClass буде кидати CArchiveException.
Ваш клас виконавчі файли повинні використовувати DECLARE_SERIAL і IMPLEMENT_SERIAL; в іншому випадку, SerializeClass буде кидати CNotSupportedException.
Отримання значення параметра pRuntimeClass за допомогою RUNTIME_CLASS макрос. Базовий клас повинен використовували IMPLEMENT_SERIAL макросів.
Приклад
клас CBaseClass: Громадська CObject {...};
клас CDerivedClass: Громадська CBaseClass {...};
недійсним CDerivedClass::Serialize (C&Archiveamp, ar)
{
Якщо (АР.IsStoring())
{
//Normal код для зберігання //of вміст цього об'єкта
}
інше
{
//Normal код для читання //of вміст цього об'єкта
}
/ / дозволити базового класу до сериализации разом //with свою інформацію про версію
АР.SerializeClass(RUNTIME_CLASS(CBaseClass));
CBaseClass::Serialize(ar);
}
Огляд CArchive | Члени класу | Ієрархічна діаграма
Дивіться такожnbsp;CArchive::ReadClass, CArchive::WriteClass, CArchive::GetObjectSchema, CArchive::SetObjectSchema, CArchiveException, C&NotSupportedException