Sdílet prostřednictvím


Serializace v MFC

Tento článek vysvětluje, že spustí mechanizmus serializace v knihovně pro třídy nadace Microsoft (MFC) umožňuje zachování mezi objekty aplikace.

Serializace je proces zápisu nebo čtení objektu do nebo z trvalého úložiště střední jako soubor na disku.Serializace je ideální pro situace, kdy je žádoucí zachovat stav strukturovaných dat (například C++ třídy nebo struktury) během nebo po spuštění programu.Pomocí serializace objektů poskytovaných MFC umožňuje v standardní a konzistentní způsob vystřídání uživatele z třeba provádět operace se soubory ručně.

MFC poskytuje integrovanou podporu serializace třídy CObject.Proto všechny třídy odvozené z CObject můžete využít CObject's serializace protokol.

Základní myšlenkou serializace je třeba možnost zápisu aktuálního stavu obvykle označený hodnotu proměnné jeho členů, k trvalé úložiště objektu.Objekt lze později znovu čtení nebo rekonstrukci objektu stavu z úložiště.Serializace zpracovává všechny podrobnosti objektu ukazatele a cyklické odkazy na objekty, které se používají při serializaci objektu.Klíčové je odpovědná za čtení a psaní vlastního státu sám.Třída být serializovatelné ji tedy musí implementovat serializace základní operace.Jak je uvedeno ve skupině serializace článků je snadno přidat funkce této třídy.

MFC používá objekt CArchive třídy jako prostředník mezi serializovat objekt a paměťové médium.Tento objekt je vždy přidružen CFile objektu, ze které získá nezbytné informace pro serializaci včetně názvu souboru a zda je požadovaná operace čtení nebo zápisu.Můžete použít objekt, který provádí operaci serializace CArchive objektu bez ohledu na povahu paměťové médium.

A CArchive objekt používá přetížené kurzoru (<<) a extrakce (>>) operátory provádět operace čtení a zápis.Další informace naleznete v ukládání a načítání CObjects prostřednictvím archiv v článku serializace: serializaci objektu.

[!POZNÁMKA]

Nezaměňujte CArchive třídy s univerzální iostream třídy, které jsou formátovány pouze text.CArchive Je binární formát Serializované objekty třídy.

Pokud chcete, můžete vynechat MFC serializace vytvořit svůj vlastní mechanismus úložiště trvalých dat.Musíte přepsat členské funkce třídy, které iniciovat serializace v příkazu uživatele.Viz popis v Technická poznámka 22 z ID_FILE_OPEN, ID_FILE_SAVE, a ID_FILE_SAVE_AS standardní příkazy.

Následující články se týkají dva hlavní úkoly vyžadované pro serializaci:

V článku serializace: serializace vs. Vstupní a výstupní databáze popisuje při serializaci je vhodné techniky vstupu a výstupu, v databázové aplikace.

Viz také

Referenční dokumentace

Třída CArchive

Třída CObject

Třída CDocument

Třída CFile

Koncepty

Obecná témata MFC

Další zdroje

Koncepty MFC