que preprocesador informatica funcion directivas c++ c-preprocessor preprocessor-directive

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