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 --------|