Partager via


CMemFile, classe

fichier Cclasse dérivée qui prend en charge des fichiers de mémoire.

class CMemFile : public CFile

Membres

Constructeurs publics

Nom

Description

CMemFile::CMemFile

Crée un fichier objet de mémoire.

Méthodes publiques

Nom

Description

CMemFile::Attach

Joint un bloc de mémoire à CMemFile.

CMemFile::Detach

Détache le bloc de mémoire d' CMemFile et retourne un pointeur vers le bloc de mémoire détaché.

Méthodes protégées

Nom

Description

CMemFile::Alloc

Substitution pour modifier le comportement d'allocation de mémoire.

CMemFile::Free

Substitution pour modifier le comportement de désallocation de mémoire.

CMemFile::GrowFile

Substitution pour modifier le comportement en élevant un fichier.

CMemFile::Memcpy

Substitution pour modifier le comportement de copie de mémoire en lecture et en écriture des fichiers.

CMemFile::Realloc

Substitution pour modifier le comportement de redistribution de mémoire.

Notes

Ces fichiers de mémoire se comportent comme des fichiers sur disque mais que le fichier est stocké dans la mémoire vive plutôt que sur le disque. Un fichier de stockage est utile pour le stockage temporaire rapide ou pour transférer des octets bruts ou des objets sérialisés entre les processus indépendants.

Les objets d'CMemFile peuvent automatiquement allouer leur propre mémoire ou vous pouvez attacher votre propre bloc de mémoire à l'objet d' CMemFile en appelant Attachement. Dans l'un ou l'autre de point de droite, la mémoire pour élever le fichier de mémoire automatiquement est allouée par incréments de taille d' nGrowBytessi nGrowBytes n'est pas nul.

Le bloc de mémoire sera automatiquement supprimé lors de destruction de l'objet d' CMemFile si la mémoire était initialement allouée par l'objet d' CMemFile ; sinon, vous êtes chargé de libérer la mémoire que vous avez jointe à l'objet.

Vous pouvez accéder au bloc de mémoire via le pointeur fourni lorsque vous détachez le de l'objet d' CMemFile en appelant détachez.

L'utilisation la plus courante d' CMemFile consiste à créer un objet d' CMemFile et de l'utiliser en appelant les fonctions membres de fichier C . Notez que crée CMemFile l'ouvre automatiquement : vous n'appelez pas CFile::Open, qui est utilisé uniquement pour des fichiers sur disque. Étant donné qu' CMemFile n'utilise pas de fichier sur disque, le membre CFile::m_hFile n'est pas utilisée et n'a aucune signification.

Les fonctions membres d' CFiledouble, LockRange, et UnlockRange ne sont pas implémentées pour CMemFile. Si vous appelez ces fonctions sur CMemFile objet, obtiendront vous CNotSupportedException.

CMemFile utilise les fonctions de la bibliothèque Runtime malloc, realloc, et inscription pour allouer, réaffecter, et libérer la mémoire ; et l'intrinsèque memcpy pour bloquer la mémoire de copie en lecture et en écriture. Si vous souhaitez modifier ce comportement ou le comportement lorsque CMemFile élève un fichier, dérivez votre propre classe d' CMemFile et substituez les fonctions appropriées.

Pour plus d'informations sur CMemFile, consultez les articles fichiers dans MFC et gestion de la mémoire (MFC) et voir le gestion de fichiers dans la référence de la bibliothèque Runtime.

Hiérarchie d'héritage

CObject

Fichier C

CMemFile

Configuration requise

Header: afx.h

Voir aussi

Référence

CFile, classe

Graphique de la hiérarchie