informatica - funcion preprocesador en c++
¿Pueden#if directivas pre-procesador anidadas en C++? (3)
Tengo una pregunta sobre las directivas de preprocesador en c ++:
Por ejemplo:
#ifndef QUESTION
//some code here
#ifndef QUESTION
//some code here
#endif
#endif
¿Podemos usarlo de esta manera, y el compilador C ++ puede hacer coincidir el ifndef
y el endif
de la manera correcta?
En su código, la sección # PREndef QUESTION se descartará a menos que #undef QUESTION.
¡Buena suerte!
Sí, puedes anidar bloques #if
/ #endif
. Algunos estilos de codificación C le dirían que escriba
#ifdef CONDITION1
# ifdef CONDITION2
# endif
#endif
usando espacios para indicar el nivel de anidación.
Si podemos. La instrucción #endif
coincide con el #if
#ifdef
o #ifndef
para el cual no ha habido un #endif
correspondiente.
p.ej
#if ----------|
#if -----| |
#endif ---| |
#endif --------|