Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ett CArchive objekt tillhandahåller en typsäker buffringsmekanism för att skriva eller läsa serialiserbara objekt till eller från ett CFile objekt.
CFile Vanligtvis representerar objektet en diskfil, men det kan också vara en minnesfil (CSharedFileobjekt), som kanske representerar Urklipp.
Ett givet CArchive objekt lagrar (skriver, serialiserar) data eller läser in (läser, deserialiserar) data, men aldrig båda. Livslängden för ett CArchive objekt är begränsad till en passage genom att skriva objekt till en fil eller läsa objekt från en fil. Därför krävs två objekt som skapas CArchive successivt för att serialisera data till en fil och sedan deserialisera tillbaka dem från filen.
När ett arkiv lagrar objekt till en fil bifogar arkivet CRuntimeClass namnet på objekten. När ett annat arkiv läser in objekt från en fil till minnet, rekonstrueras de CObject-härledda objekten dynamiskt baserat på CRuntimeClass hos objekten. Ett angivet objekt kan refereras mer än en gång eftersom det skrivs till filen av lagringsarkivet. Inläsningsarkivet rekonstruerar dock objektet bara en gång. Information om hur ett arkiv bifogar CRuntimeClass information till objekt och rekonstruerar objekt, med hänsyn till möjliga flera referenser, beskrivs i Technical Note 2.
När data serialiseras till ett arkiv ackumulerar arkivet data tills dess buffert är full. Sedan skriver arkivet sin buffert till det objekt som CFile objektet pekar på CArchive . På samma sätt, när du läser data från ett arkiv, läser den data från filen till dess buffert och sedan från bufferten till ditt deserialiserade objekt. Denna buffring minskar antalet gånger en hårddisk läses fysiskt, på så sätt förbättras ditt programs prestanda.