¿Qué es la compilación condicional?

En la programación de computadoras, la compilación condicional describe la capacidad de un compilador de software o procesador de código fuente para incluir o ignorar ciertos comandos o bloques de código basados ​​en instrucciones específicas del lenguaje que técnicamente no forman parte de la especificación del lenguaje de programación central. Los comandos que se utilizan para desencadenar la compilación condicional en un programa a menudo se denominan directivas preprocesadoras, aunque también pueden conocerse como directivas de compiladores, comentarios condicionales o define condicional. Dependiendo del compilador o idioma que se utilice, las directivas condicionales pueden ser variables o macros definidas por el usuario, o también podrían ser variables del sistema establecidas por el compilador o el sistema operativo. La compilación condicional con frecuencia se utiliza para configurar un conjunto único de archivos de código fuente para que puedan compilarse en diferentes entornos u sistemas operativos sin tener que intercambiar o cambiar los archivos de origen.

Las define condicionales que se utilizan para probarLa ilación puede variar de un idioma a otro, pero generalmente son macros u otras expresiones de metadatos fuera del alcance de las variables normales del programa. En idiomas como C, las variables generalmente son macros que son leídos por un preprocesador. La mayoría de las veces, las macros no son accesibles por el código fuente del programa ejecutable real, a pesar de que existen en los mismos archivos de origen.

Las directivas que se utilizan para probar las variables condicionales definidas son rudimentarias y siguen la misma lógica que una declaración if-then. Las pruebas básicas que se pueden realizar para la compilación condicional son si un valor se define, no se define o, en algunos casos, si dos variables definidas son equivalentes. Las variables o macros en sí mismas generalmente no tienen ningún valor de importancia, porque el acto de definirlas es para lo que están verificando las directivas. Con algunos idiomas y compiladores, sin embargo, tEl valor de una variable definida puede importar si se evalúan para el estado booleano.

Cuando un compilador encuentra directivas utilizadas para la compilación condicional, se evalúan las directivas para ver si prueban como verdaderas o falsas. Si es verdadero, el código que sigue la directiva se compila de manera normal; De lo contrario, el compilador se omitirá por completo el código contenido en la Directiva. Esto es diferente a las declaraciones lógicas condicionales dentro del código del programa ejecutable en sí porque, incluso si la lógica tiene un bloque de código que no se puede ejecutar, aún se interpretará y compilará en la mayoría de los casos. Con las directivas condicionales preprocesador, el código omitido nunca se incluye, interpreta o compila. También debe tenerse en cuenta que una vez que el preprocesador ha evaluado todas las variables y directivas condicionales, no se compilan con el resto del programa, porque solo están destinados a proporcionar dirección al compilador.

La compilación condicional se usa con mayor frecuencia to Incluir o excluir el código específico para un sistema operativo o entorno operativo particular. Esto significa que las bibliotecas que existen en un sistema operativo pueden incluirse condicionalmente si las directivas determinan que el programa se está compilando bajo ese sistema operativo. Alternativamente, las directivas también se pueden usar para incluir o excluir el código basado en variables definidas por el usuario. Esto se puede hacer, por lo que el código de depuración o perfil no está incluido en la versión final de un programa, más o menos ciertas características se pueden habilitar o deshabilitar sin tener que mantener copias separadas del código.

.

OTROS IDIOMAS