CArchive::SetStoreParams
Verwenden Sie SetStoreParams, wenn Sie viele CObject abgeleitete Objekte in einem Archiv speichern.
void SetStoreParams(
UINT nHashSize = 2053,
UINT nBlockSize = 128
);
Parameter
nHashSize
Die Größe der Hashtabelle für Schnittstellenzeigerzuordnungen.sollte eine Primzahl.nBlockSize
Gibt die Speicherbelegungsgranularität zum Erweitern der Parameter an.sollte eine Potenz von 2 für die beste Leistung.
Hinweise
SetStoreParams ermöglicht es Ihnen, die Hashtabellengröße und die Blockgröße der Zuordnung festzulegen, die verwendet wird, um eindeutige Objekte während des Serialisierungsprozesses zu identifizieren.
Sie dürfen SetStoreParams nicht aufrufen, nachdem alle Objekte gespeichert sind, oder nach MapObject oder WriteObject wird aufgerufen.
Beispiel
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
}
}
Anforderungen
Header: afx.h