CArchive::SetStoreParams
Utilizzare SetStoreParams quando si archiviano tantissimo CObjectdi oggetti derivati in un archivio.
void SetStoreParams(
UINT nHashSize = 2053,
UINT nBlockSize = 128
);
Parametri
nHashSize
La dimensione della tabella hash per i mapping dei puntatori a interfaccia. Deve essere un numero primo.nBlockSize
Specifica la granularità di allocazione della memoria per l'estensione dei parametri. Deve essere una potenza di 2 per prestazioni ottimali.
Note
SetStoreParams consente di impostare il hash presenti le dimensioni e la dimensione di un blocco di mapping utilizzato per identificare gli oggetti univoci durante il processo di serializzazione.
Non è necessario chiamare SetStoreParams dopo che tutti gli oggetti vengono archiviati, o dopo MapObject o WriteObject viene chiamato.
Esempio
class CMyLargeDocument : public CDocument
{
public:
virtual void Serialize(CArchive& ar);
};
void CMyLargeDocument::Serialize(CArchive& ar)
{
if (ar.IsStoring())
ar.SetStoreParams(); // use large defaults
else
ar.SetLoadParams();
if (ar.IsStoring())
{
// code for storing CMyLargeDocument
}
else
{
// code for loading CMyLargeDocument
}
}
Requisiti
Header: afx.h