Share via


#undef (Directiva)

Directiva de preprocesador que quita la definición actual de una constante o macro que se definió anteriormente mediante la directiva #define .

identificador de #undef

Parámetros

Elemento Descripción
Identificador
Identificador de la constante o macro de la que se va a quitar la definición. Si va a anular la definición de una macro, proporcione solo el identificador, no la lista de parámetros.

Comentarios

Puede aplicar la directiva #undef a un identificador que no tenga ninguna definición anterior; esto 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 [) para controlar la compilación condicional del programa de origen.

Las constantes y macros pueden no definirse desde la línea de comandos mediante la opción /U, seguidas de los identificadores que se van a definir. Esto equivale a agregar una secuencia de directivas de #undef al principio del archivo de origen.

Ejemplos

En el ejemplo siguiente se muestra cómo usar la directiva #undef para quitar definiciones de una constante simbólica y una macro.

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

#undef WIDTH
#undef ADD

Consulte también

Directivas de preprocesador (DirectX HLSL)

Directiva #define (DirectX HLSL)

#if, )