次の方法で共有


CArchive::SetStoreParams

更新 : 2007 年 11 月

SetStoreParams は、アーカイブに大量の CObject 派生オブジェクトを格納する場合に使用します。

void SetStoreParams(
   UINT nHashSize = 2053,
   UINT nBlockSize = 128 
);

パラメータ

  • nHashSize
    インターフェイス ポインタ マップ用のハッシュ テーブルのサイズ。この値は素数にします。

  • nBlockSize
    パラメータを拡張するために割り当てるメモリの単位を指定します。パフォーマンスを最高にするには、2 の累乗にします。

解説

SetStoreParams では、シリアル化プロセス中に、一意のオブジェクトを識別するマップのハッシュ テーブルのサイズ、およびブロック サイズを設定できます。

オブジェクトを格納した後、または MapObjectWriteObject を呼び出した後に SetStoreParams を呼び出すことはできません。

使用例

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

必要条件

ヘッダー : afx.h

参照

参照

CArchive クラス

階層図

CArchive::SetLoadParams

その他の技術情報

CArchive のメンバ