CArchive::SetLoadParams

Call SetLoadParams when you are going to read a large number of CObject-derived objects from an archive.

void SetLoadParams( 
   UINT nGrowBy = 1024  
);

Parameters

  • nGrowBy
    The minimum number of element slots to allocate if a size increase is necessary.

Remarks

CArchive uses a load array to resolve references to objects stored in the archive. SetLoadParams allows you to set the size to which the load array grows.

You must not call SetLoadParams after any object is loaded, or after MapObject or ReadObject is called.

Example

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
   }
}

Requirements

Header: afx.h

See Also

Reference

CArchive Class

Hierarchy Chart

CArchive::SetStoreParams

Other Resources

CArchive Members