Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Um CArchive objeto fornece um mecanismo de buffer seguro para escrever ou ler objetos serializáveis de ou para um CFile objeto. Normalmente, o CFile objeto representa um arquivo de disco, no entanto, também pode ser um arquivo de memória (CSharedFile objeto), talvez representando a área de transferência.
Um determinado CArchive objeto armazena (grava, serializa) dados ou carrega (lê, desserializa) dados, mas nunca ambos. A vida útil de um CArchive objeto é limitada a uma passagem através da escrita de objetos para um arquivo ou leitura de objetos de um arquivo. Assim, dois objetos CArchive criados sucessivamente são necessários para serializar dados para um arquivo e depois desserializá-los do arquivo.
Quando um arquivo armazena objetos em um arquivo, o arquivo anexa o CRuntimeClass nome aos objetos. Em seguida, quando outro arquivo carrega objetos de um arquivo para a memória, os CObjectobjetos derivados são reconstruídos dinamicamente com base no CRuntimeClass dos objetos. Um determinado objeto pode ser referenciado mais de uma vez à medida que é gravado no arquivo pelo arquivo de armazenamento. O arquivo de carregamento, no entanto, reconstruirá o objeto apenas uma vez. Os detalhes sobre como um arquivo anexa CRuntimeClass informações a objetos e reconstrói objetos, levando em conta possíveis referências múltiplas, são descritos na Nota Técnica 2.
À medida que os dados são serializados em um arquivo, o arquivo acumula os dados até que seu buffer esteja cheio. Em seguida, o arquivo grava seu buffer no objeto CFile apontado pelo objeto CArchive. Da mesma forma, à medida que você lê dados de um arquivo, ele lê dados do arquivo para seu buffer e, em seguida, do buffer para seu objeto desserializado. Esse buffer reduz o número de vezes que um disco rígido é lido fisicamente, melhorando assim o desempenho do seu aplicativo.