Класс CMemFile
CFile- производный класс, который поддерживает файлы памяти.
class CMemFile : public CFile
Члены
Открытые конструкторы
Имя |
Описание |
---|---|
Создает объект файла памяти. |
Открытые методы
Имя |
Описание |
---|---|
Вложение блок памяти в CMemFile. |
|
Наконец удаляет блок памяти из CMemFile и возвращает указатель на блок finally удаленному памяти. |
Защищенные методы
Имя |
Описание |
---|---|
Переопределение, чтобы изменить поведение выделения памяти. |
|
Переопределение, чтобы изменить поведение освобождение памяти. |
|
Переопределение, чтобы изменить поведение увеличение файла. |
|
Переопределение, чтобы изменить поведение копирования памяти при чтении и записи файлов. |
|
Переопределение, чтобы изменить поведение перераспределения памяти. |
Заметки
Эти файлы памяти ведут себя как файлы на диске, за исключением того, что файл сохраняется в оперативной памяти, а не на диске. Файл памяти полезен для временного хранения или для передачи необработанных байт или сериализованные объекты между независимыми процессами.
Объекты CMemFile могут автоматически выбрать собственную память, либо можно вложить собственный блок памяти в объект CMemFile путем вызова Вложение. В любом случае, память для увеличение памяти файл автоматически выделена в nGrowBytes- указанных размеров шагом при nGrowBytes не равно нулю.
Блок памяти будет автоматически удален при разрушении объекта CMemFile если память была изначально выделена объектом CMemFile; в противном случае ответственность за deallocating память для вложили к объекту.
Можно получить доступ к блок памяти через предоставленный указатель, когда наконец удалить ее из объекта CMemFile путем вызова Наконец удалить.
Чаще всего используется CMemFile создать объект CMemFile и использовать ее с помощью вызова функции-члены CFile. Обратите внимание, что создание CMemFile автоматически открывает его. CFile::Open, которые не вызываются только используется для файлов на диске. Поскольку CMemFile не использует файл на диске, не используется и не имеет член данных CFile::m_hFile смысла.
Функции-члены дубликат, LockRange и UnlockRangeCFile не реализованы для CMemFile. Если вызвать эти функции в CMemFile объект, обращающихся CNotSupportedException.
CMemFile использует функции библиотеки времени выполнения malloc, realloc и free для выбора, reallocate и отмены выделения памяти; и внутренние memcpy чтобы отключить память копии при чтении и записи. Если требуется изменить эту функциональности или функциональности, то при CMemFile файл растет, создайте собственный класс, производный от CMemFile и переопределить соответствующие функции.
Дополнительные сведения о CMemFile см. в разделе статьи файлы в MFC и управление памятью (MFC) и Обработка файла см. в документации по библиотеке времени выполнения.
Иерархия наследования
CMemFile
Требования
Header: afx.h