CArchive::SetStoreParams
Используйте SetStoreParams храниться большие объемы CObject объекты, унаследованные от в архиве.
void SetStoreParams(
UINT nHashSize = 2053,
UINT nBlockSize = 128
);
Параметры
nHashSize
Размер хэш-таблицы для сопоставления указателя интерфейса.Должен быть основной номер.nBlockSize
Определяет гранулярность выделения памяти для расширения параметры.Должна быть степенью числа 2 для лучшей производительности.
Заметки
SetStoreParams позволяет задать размер хэш-таблицы и размер блока сопоставления, используемого для идентификации уникального объекты в процессе сериализации.
Не следует вызывать SetStoreParams после того как все объекты хранятся или после MapObject или WriteObject вызывает.
Пример
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
}
}
Требования
Header: afx.h