请输入您要查询的百科知识:

 

词条 CMemFile
释义

CMemFile为支持内存文件的CFile的派生类。内存文件的行为类似于磁盘文件,所不同的是该文件存储在RAM中,而不是磁盘上。内存文件用于快速暂时存储,以及在独立的进程间转换字节或可串行化的对象。

CMemFile对象能够自动地分配它们的内存空间,或通过调用Attach函数为CMemFile对象附加内存块。另一种情形,如果nGrowBytes非零,那么将自动地以nGrowBytes为单位为增加的内存文件分配内存。

可以通过提供的指针访问内存块,此时可以通过调用Detach函数将其从CMemFile对象中分离出来。

CMemFile函数最一般的用途是创建CMemFile对象,并通过调用CFile成员函数来使用它。值得注意的是当创建CMemFile后将自动得打开它:不要调用仅仅用于磁盘文件的CFile::Open函数,其原因在于没有使用数据成员CFile::m_hFile。

CFile成员函数Duplicate, LockRange和UnlockRange对于CMemFile无效。如果在CMemFile对象中调用了这些函数,那么将获得CnotSupported Exception。

CMemFile使用了运行库函数malloc, realloc,和free来分配、重新分配和释放内存,而原有的memcpy函数在进行读写时,可以块拷贝。如果希望改变这种行为或CMemFile增大文件的行为,那么应当从CMemFile中派生自己的类,并辅以适当的函数。

#include <afx.h>

CMemFile类的成员

构造函数

CMemFile 构造一个内存文件对象

操作

Attach 附加内存块到CMemFile中

Detach 从CMemFile中分离内存块,并返回被分离的内存块的指针

高级可覆盖的函数

Alloc 可覆盖以用于修改内存分配行为

Free 可覆盖以用于修改释放内存行为

Realloc 可覆盖以用于修改重新分配内存行为

Memcpy 可覆盖以用于读写时修改内存拷贝行为

GrowFile 可覆盖以用于修改文件增大时的行为

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2025/2/6 12:34:20