Partager via


IAtlStringMgr, classe

Cette classe représente l’interface d’un CStringT gestionnaire de mémoire.

Syntaxe

__interface IAtlStringMgr

Membres

Méthodes

Nom Description
Allouer Appelez cette méthode pour allouer une nouvelle structure de données de chaîne.
Cloner Appelez cette méthode pour retourner un pointeur vers un nouveau gestionnaire de chaînes à utiliser avec une autre instance de CSimpleStringT.
Gratuit Appelez cette méthode pour libérer une structure de données de chaîne.
GetNilString Retourne un pointeur vers l’objet CStringData utilisé par des objets de chaîne vides.
Réaffecter Appelez cette méthode pour réallouer une structure de données de chaîne.

Notes

Cette interface gère la mémoire utilisée par les classes de chaîne indépendantes de MFC ; tels que CSimpleStringT, CStringT et CFixedStringT.

Vous pouvez également utiliser cette classe pour implémenter un gestionnaire de mémoire personnalisé pour votre classe de chaîne personnalisée. Pour plus d’informations, consultez Gestion de la mémoire et CStringT.

Spécifications

En-tête : atlsimpstr.h

IAtlStringMgr ::Allocate

Alloue une nouvelle structure de données de chaîne.

CStringData* Allocate(int nAllocLength,int nCharSize) throw();

Paramètres

nAllocLength
Nombre de caractères dans le nouveau bloc de mémoire.

nCharSize
Taille (en octets) du type de caractère utilisé par le gestionnaire de chaînes.

Valeur de retour

Retourne un pointeur vers le bloc de mémoire nouvellement alloué.

Remarque

Ne signalez pas une allocation ayant échoué en lève une exception. Au lieu de cela, une allocation ayant échoué doit être signalée en retournant NULL.

Notes

Appelez IAtlStringMgr ::Free ou IAtlStringMgr ::ReAllocate pour libérer la mémoire allouée par cette méthode.

Remarque

Pour obtenir des exemples d’utilisation, consultez Gestion de la mémoire et CStringT.

IAtlStringMgr ::Clone

Retourne un pointeur vers un nouveau gestionnaire de chaînes à utiliser avec une autre instance de CSimpleStringT.

IAtlStringMgr* Clone() throw();

Valeur de retour

Retourne une copie de l'objet IAtlStringMgr.

Notes

Communément appelé par l’infrastructure lorsqu’un gestionnaire de chaînes est nécessaire pour une nouvelle chaîne. Dans la plupart des cas, le this pointeur est retourné.

Toutefois, si le gestionnaire de mémoire ne prend pas en charge l’utilisation par plusieurs instances de CSimpleStringT, un pointeur vers un gestionnaire de chaînes partagé doit être retourné.

Remarque

Pour obtenir des exemples d’utilisation, consultez Gestion de la mémoire et CStringT.

IAtlStringMgr ::Free

Libère une structure de données de chaîne.

void Free(CStringData* pData) throw();

Paramètres

pData
Pointeur vers le bloc de mémoire à libérer.

Notes

Libère le bloc de mémoire spécifié précédemment alloué par Allocation ou Réallouer.

Remarque

Pour obtenir des exemples d’utilisation, consultez Gestion de la mémoire et CStringT.

IAtlStringMgr ::GetNilString

Retourne un pointeur vers une structure de données de chaîne pour une chaîne vide.

CStringData* GetNilString() throw();

Valeur de retour

Pointeur vers l’objet CStringData utilisé pour représenter une chaîne vide.

Notes

Appelez cette fonction pour retourner une représentation d’une chaîne vide.

Remarque

Lors de l’implémentation d’un gestionnaire de chaînes personnalisé, cette fonction ne doit jamais échouer. Pour ce faire, vous pouvez incorporer une instance de CNilStringData la classe de gestionnaire de chaînes et renvoyer un pointeur vers cette instance.

Remarque

Pour obtenir des exemples d’utilisation, consultez Gestion de la mémoire et CStringT.

IAtlStringMgr ::Reallocate

Réalloue une structure de données de chaîne.

CStringData* Reallocate(
    CStringData* pData,
    int nAllocLength,
    int nCharSize) throw();

Paramètres

pData
Pointeur vers la mémoire précédemment allouée par ce gestionnaire de mémoire.

nAllocLength
Nombre de caractères dans le nouveau bloc de mémoire.

nCharSize
Taille (en octets) du type de caractère utilisé par le gestionnaire de chaînes.

Valeur de retour

Retourne un pointeur vers le début du bloc de mémoire nouvellement alloué.

Notes

Appelez cette fonction pour redimensionner le bloc de mémoire existant spécifié par pData.

Appelez IAtlStringMgr ::Free pour libérer la mémoire allouée par cette méthode.

Remarque

Pour obtenir des exemples d’utilisation, consultez Gestion de la mémoire et CStringT.

Voir aussi

Graphique hiérarchique
Classes partagées ATL/MFC