Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'idea di base di persistenza è che un oggetto deve poter scrivere il relativo stato corrente, indicato dai valori delle variabili membro, in un archivio permanente.In seguito, l'oggetto può essere ricreato mediante la lettura, o “deserializzazione,„ lo stato dall'archivio permanente.Un punto chiave è rappresentata dall'oggetto è responsabile della lettura e la scrittura dello stato.Pertanto, affinché la classe sia persistente, deve implementare le operazioni di base di serializzazione.
Il framework fornisce un'implementazione predefinita per i documenti salvataggio dei file su disco in risposta a salvataggio e al salvataggio come comandi del menu File e per il caricamento di documenti dai file su disco in risposta al comando aperto.Con minimo lavoro, è possibile distribuire la capacità di un documento di scrivere e leggere i dati da un file.L'elemento principale che è necessario apportareeseguire l'override della funzione membro di serializzare nella classe del documento.
La Creazione guidata applicazione MFC consente di posizionare un override scheletriche della funzione membro Serialize di CDocument nella classe del documento crea automaticamente.Dopo avere implementato le variabili membro dell'applicazione, è possibile inserire l'override di Serialize con il codice che invia i dati “in un oggetto di archiviazione„ connesso a un file.Un oggetto di CArchive è simile agli oggetti di input/output di cout e di cin dalla libreria iostream di C++.tuttavia, CArchive scrive e legge il formato binario, non testo formattato.
Scegliere l'argomento su cui visualizzare maggiori informazioni
Il ruolo del documento tramite la serializzazione
Il ruolo dei dati nella serializzazione
Il ruolo del documento tramite la serializzazione
Il framework risponde automaticamente al File aperto, a salvataggio e al salvataggio come controlli chiamando la funzione membro di Serialize del documento se viene distribuito.Un comando di ID_FILE_OPEN , ad esempio, chiama una funzione di gestioneapplicazione.Durante questo processo, riceverà e risponde alla finestra di dialogo di apertura file e il framework ottiene il nome file che l'utente sceglie.Il framework crea un'impostazione dell'oggetto di CArchive il caricamento dei dati nel documento e passa archivio a Serialize.Il framework ha già aperto il file.Il codice nella funzione membro di Serialize del documento legge i dati nell'archivio, ricostruente gli oggetti dati in base alle necessità.Per ulteriori informazioni sulla serializzazione, vedere l'articolo serializzazione.
Il ruolo dei dati nella serializzazione
In genere i dati del classe-tipo devono essere serializzarsi.Ovvero quando si passa un oggetto a un archivio, l'oggetto deve sapere come scriversi archivio e leggersi dall'archivio.MFC fornisce il supporto per rendere le classi serializzabili in questo modo.Se si progetta una classe per definire un tipo di dati e si desidera serializzare i dati di quel tipo, progettare per la serializzazione.