CArchive::WriteClass
Použití WriteClass ukládat informace o verzi a třídy základní třídy během serializace odvozené třídy.
void WriteClass(
const CRuntimeClass* pClassRef
);
Parametry
- pClassRef
Ukazatel CRuntimeClass struktury, která odpovídá požadované odkaz na třídu.
Poznámky
WriteClasszapíše odkaz na CRuntimeClass základní třída CArchive .Použití CArchive::ReadClass k načtení odkazu.
WriteClassověří, zda je kompatibilní s vaší třídy runtime třídy archivované informace.Pokud není kompatibilní, WriteClass vyvolají CArchiveException.
Musíte použít třídy runtime DECLARE_SERIAL a IMPLEMENT_SERIAL; jinak WriteClass vyvolají CNotSupportedException.
Můžete použít SerializeClass namísto WriteClass , která zpracovává čtení i zápis odkaz na třídu.
Příklad
CFile myFile(_T("My__test__file.dat"),
CFile::modeCreate | CFile::modeReadWrite);
// Create a storing archive.
CArchive arStore(&myFile, CArchive::store);
// Store the class CAge in the archive.
arStore.WriteClass(RUNTIME_CLASS(CAge));
// Close the storing archive.
arStore.Close();
// Create a loading archive.
myFile.SeekToBegin();
CArchive arLoad(&myFile, CArchive::load);
// Load a class from the archive.
CRuntimeClass* pClass = arLoad.ReadClass();
if (!pClass->IsDerivedFrom(RUNTIME_CLASS(CAge)))
{
arLoad.Abort();
}
Požadavky
Záhlaví: afx.h