CMemFile Class
Archivo C- clase derivada que admite archivos de memoria.
class CMemFile : public CFile
Members
Constructores públicos
Name |
Descripción |
---|---|
Construye un objeto de archivo de memoria. |
Métodos públicos
Name |
Descripción |
---|---|
Asocia un bloque de memoria a CMemFile. |
|
Desasocia el bloque de memoria de CMemFile y devuelve un puntero al bloque de memoria desasociado. |
Métodos protegidos
Name |
Descripción |
---|---|
Reemplace para modificar el comportamiento de la asignación de memoria. |
|
Reemplace para modificar el comportamiento de la desasignación de memoria. |
|
Reemplace para modificar el comportamiento al crecer un archivo. |
|
Reemplace para modificar el comportamiento de la copia de memoria al leer y escribir los archivos. |
|
Reemplace para modificar el comportamiento de reasignación de memoria. |
Comentarios
Estos archivos de memoria se comportan como los archivos de disco salvo que el archivo se almacena en RAM en lugar de en el disco. Un archivo de memoria es útil para el almacenamiento temporal rápido o para transferir bytes sin formato o objetos serializados entre procesos independientes.
Los objetos deCMemFile automáticamente pueden asignar su propia memoria o adjuntar su propio bloque de memoria al objeto de CMemFile llamando a Asociar. En cualquier caso, la memoria para crecer el archivo automáticamente de la memoria se asigna en nGrowBytes- incrementos ordenados si nGrowBytes no es cero.
El bloque de memoria automáticamente se eliminará sobre la destrucción de objetos CMemFile si la memoria se asignó originalmente por el objeto de CMemFile ; si no, es responsable de la desasignación de memoria que asoció el objeto.
Puede tener acceso al bloque de memoria a través del puntero proporcionado cuando se desasocia del objeto de CMemFile llamando a Desasociar.
El uso más común de CMemFile es crear un objeto de CMemFile y utilizarlo llamando al miembro de Archivo C funciona. Observe que crea CMemFile automáticamente abre: no llama CFile::Open, que se utiliza para los archivos de disco. Dado que CMemFile no utiliza un archivo de disco, no utilice y no tiene el miembro de datos CFile::m_hFile ningún significado.
Las funciones duplicado, LockRange, y UnlockRange miembro de CFile no se implementan para CMemFile. Si llama a estas funciones en un objeto de CMemFile , obtendrá CNotSupportedException.
CMemFile utiliza las funciones de la biblioteca en tiempo de ejecución malloc, realloc, y libre para asignar, para reasignar, y para desasignar memoria; y intrínseco memcpy para bloquear memoria de copia al leer y escribir. Si desea cambiar este comportamiento o el comportamiento cuando CMemFile crece un archivo, derive su propia clase de CMemFile y reemplazar las funciones adecuadas.
Para obtener más información sobre CMemFile, vea los artículos archivos en MFC y administración de memoria (MFC) y vea El control de archivo en la referencia de la biblioteca en tiempo de ejecución.
Jerarquía de herencia
CMemFile
Requisitos
encabezado: afx.h