释义 |
CArchive::SetStoreParams
void SetStoreParams(UINT nHashSize=2053,UINT nBlockSize=128);
参数:nHashSize | 用于指针映射接口的哈希表的大小,必须是一个素数。 | nBlockSize | 为扩展参数指定内存分配间隔。要获得最好的执行效果,应该是2的倍数。 |
说明: 当在一个归档文件中存储许多CObject派生对象时,使用SetStoreParams。 SetStoreParams允许设定哈希表的大小和映射的块的大小。映射用来在串行化的过程中标识唯一的对象。 在存储任何一个对象或调用MapObject或WriteObject之后,不需要调用SetStoreParams。
示例: class CMyLargeDocument:public CDocument{...}; 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 } }
请参阅:CArchive::SetLoadParams |