Directiva #undef (C/C++)
Quita (anula la definición de) un nombre creado previamente con #define
.
Sintaxis
#undefidentifier
Comentarios
La directiva #undef quita la definición actual de identifier. Por consiguiente, el preprocesador omite las apariciones posteriores de identifier. Para quitar una definición de macro utilizando #undef, solo hay que proporcionar el identifier de macro; no hay que proporcionar una lista de parámetros.
También puede aplicar la directiva #undef a un identificador que no tenga ninguna definición anterior. De este modo se garantiza que el identificador no esté definido. El reemplazo de macros no se realiza en instrucciones #undef.
La directiva #undef se empareja normalmente con una directiva #define
para crear una región en un programa de origen en el que un identificador tiene un significado especial. Por ejemplo, una función específica del programa de origen puede utilizar constantes de manifiesto para definir valores específicos del entorno que no afecten al resto del programa. La directiva #undef también funciona con la directiva #if
para controlar la compilación condicional del programa de origen. Para obtener más información, consulte las directivas #if, #elif, #else y #endif.
En el ejemplo siguiente, la directiva #undef quita las definiciones de una constante simbólica y una macro. Observe que solo se proporciona el identificador de la macro.
#define WIDTH 80
#define ADD( X, Y ) ((X) + (Y))
.
.
.
#undef WIDTH
#undef ADD
Específicos de Microsoft
Las macros pueden no definirse desde la línea de comandos mediante la opción /U
seguida de los nombres de las macros que no se definen. El efecto de emitir este comando equivale a una secuencia de instrucciones #undef
macro-name al principio del archivo.
FIN de Específicos de Microsoft
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de