Partager via


#undef, directive

Directive de préprocesseur qui supprime la définition actuelle d’une constante ou d’une macro précédemment définie à l’aide de la directive #define .

identificateur de #undef

Paramètres

Élément Description
Identificateur
Identificateur de la constante ou de la macro pour supprimer la définition de . Si vous ne définissez pas une macro, fournissez uniquement l’identificateur, pas la liste de paramètres.

Notes

Vous pouvez appliquer la directive #undef à un identificateur qui n’a pas de définition précédente ; cela garantit que l’identificateur n’est pas défini. Le remplacement de macro n’est pas effectué dans les instructions #undef.

La directive #undef est généralement associée à une directive #define pour créer une région dans un programme source dans laquelle un identificateur a une signification spéciale. Par exemple, une fonction spécifique du programme source peut utiliser des constantes manifestes pour définir les valeurs spécifiques à l'environnement qui n'affectent pas le reste du programme. La directive #undef fonctionne également avec la directive [) pour contrôler la compilation conditionnelle du programme source.

Les constantes et les macros peuvent être non définies à partir de la ligne de commande à l’aide de l’option /U, suivie des identificateurs à dédéfiner. Cela équivaut à ajouter une séquence de directives #undef au début du fichier source.

Exemples

L’exemple suivant montre comment utiliser la directive #undef pour supprimer les définitions d’une constante symbolique et d’une macro.

#define WIDTH           80
#define ADD( X, Y )     (X) + (Y)

#undef WIDTH
#undef ADD

Voir aussi

Directives de préprocesseur (DirectX HLSL)

directive #define (DirectX HLSL)

#if, )