Partager via


Suivi des allocations de mémoire

Cette rubrique s'applique à :

Édition

Visual Basic

C#

F#

C++

Web Developer

Express

La rubrique ne s'applique pas La rubrique ne s'applique pas La rubrique ne s'applique pas

Natif uniquement

La rubrique ne s'applique pas

Pro, Premium et Ultimate

La rubrique ne s'applique pas La rubrique ne s'applique pas La rubrique ne s'applique pas

Natif uniquement

La rubrique ne s'applique pas

Dans les MFC, vous pouvez utiliser la macro DEBUG_NEW à la place de l'opérateur new pour faciliter la localisation des fuites de mémoire. Dans la version Debug de votre programme, DEBUG_NEW assure le suivi du nom du fichier et du numéro de ligne pour chaque objet alloué. Lorsque vous compilez une version Release de votre programme, DEBUG_NEW est traduit en une opération new simple sans les informations de nom de fichier et de numéro de ligne. Ainsi, la vitesse n'est pas pénalisée dans la version Release de votre programme.

Si vous voulez éviter de réécrire le programme entier pour utiliser DEBUG_NEW à la place de new, vous pouvez définir la macro suivante dans vos fichiers sources :

#define new DEBUG_NEW

Lorsque vous faites un dump d'objets, chaque objet alloué avec DEBUG_NEW affiche le fichier et le numéro de ligne où il a été alloué, ce qui vous permet de localiser l'origine des fuites de mémoire.

La version Debug de l'infrastructure MFC utilise automatiquement DEBUG_NEW, contrairement à votre code. Si vous voulez bénéficier de DEBUG_NEW, vous devez utiliser DEBUG_NEW explicitement ou #define new comme indiqué plus haut.

Voir aussi

Autres ressources

Détection de fuite de mémoire dans MFC