Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Las directivas de utilice y de #ifndef realizan la misma tarea que la directiva de #if cuando se utiliza con definido( identificador ).
#ifdef identifier
#ifndef identifier
// equivalent to
#if defined identifier
#if !defined identifier
Comentarios
Puede utilizar utilice y directivas en cualquier parte #if de #ifndef pueden utilizar.La instrucción delidentificador de utilicees equivalente a#if 1cuando el identificador ha sido definidas, y es equivalente a#if 0cuando el identificador no se ha definido o no con la directiva de #undef .Estas directivas comprobadas sólo para la presencia o ausencia de identificadores definido con #define, no para los identificadores declarados en el código fuente de C o C++.
Estas directivas se proporcionan únicamente para la compatibilidad con versiones anteriores del lenguaje.La expresión constante de **)**IDde **definido (**utilizada con la directiva de #if se prefiere.
Las comprobaciones de la directiva de #ifndef contraste condition activada por utilice.Si el identificador no ha sido definidas (o su definición se ha quitado con #undef), la condición es true (cero).Si no, la condición es false (0).
Específicos de Microsoft
El identificador se puede pasar de la línea de comandos con la opción /D.hasta 30 macros se pueden especificar con /D.
esto es útil para comprobar si existe una definición, porque una definición se puede pasar de la línea de comandos.Por ejemplo:
// ifdef_ifndef.CPP
// compile with: /Dtest /c
#ifndef test
#define final
#endif
Específico de Microsoft de FINAL