Sdílet prostřednictvím


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

Viz také

Referenční dokumentace

Třída CArchive

Graf hierarchie

CArchive::ReadClass

CArchive::GetObjectSchema

CArchive::SetObjectSchema

CArchive::SerializeClass

Třída CArchiveException

Třída CNotSupportedException

CObList::CObList