En Delphi, también hay instrucciones precompiladas similares a C. Aunque este tipo de instrucción solo es efectiva en el archivo único actual (también puede ser que el autor no comprenda completamente el uso real de este tipo de instrucción), este tipo de La instrucción es útil para la compilación de múltiples versiones. El trabajo de producción (como publicar una versión de aprendizaje a partir de la versión estándar) tiene usos bastante buenos.
uno. Introducción de instrucciones:
1. DEFINIR directiva:
Formato: {$DEFINE nombre}
Descripción: Se utiliza para definir un símbolo (Símbolo) que sea válido en la unidad actual. definido
Luego puede utilizar las instrucciones IF DEF e IFNDEF para determinar si el símbolo existe.
2. Comando UNDEF:
Formato: {$nombre UNDEF}
Descripción: Se utiliza para cancelar un símbolo (Symbol) que ha sido definido en la unidad actual. Esta directiva y DEFINIR
usados juntos.
3. Directiva IFDEF:
Formato: {$nombre IFDEF}
Nota: Si se ha definido el nombre después de esta directiva, se compilará el segmento de código después de esta directiva hasta {$ELSE} o {$ENDIF}.
4. Directiva IFNDEF:
Formato: {$IFNDEF nombre}
Nota: Si el nombre después de esta directiva no está definido, se compilará el segmento de código después de esta directiva hasta {$ELSE} o {$ENDIF}.
5. Instrucción IFOPT:
Formato: {$cambio IFOPT}
Nota: Si se ha configurado el modificador después de esta instrucción, se compilará el segmento de código después de esta instrucción hasta {$ELSE} o {$ENDIF}.
Ejemplo: {$IFOPT R+}
Writeln('Active el interruptor de verificación de rango al compilar');
{$ENDIF}
6. MÁS instrucción:
Formato: {$MÁS}
Descripción: determine si el segmento de código entre la instrucción y {$ENDIF} debe compilarse o ignorarse juzgando la expresión condicional del prefijo Ifxxx.
7. Directiva ENDIF:
Formato: {$ENDIF}
Descripción: Coopera con Ifxxx para indicar la posición final del segmento de código fuente del segmento precompilado condicional.
dos. ejemplo:
Escriba ejemplos para realizar trabajos de compilación sin segmentos de código predefiniendo diferentes símbolos de compilación.
1. Cree un nuevo proyecto Delphi y agregue un botón en forma de unidad Unidad1.
2. Escriba el programa de la siguiente manera:
unidad Unidad1;
interfaz
usos
Windows, Mensajes, SysUtils, Clases, Gráficos, Controles, Formularios, Cuadros de diálogo,
Controles estándar;
tipo
TForm1 = clase(TForm)
Botón1: TBotón;
Procedimiento FormCreate(Remitente: TObject);
procedimiento Button1Click(Remitente: TObject);
privado
{Declaraciones privadas}
público
{Declaraciones públicas}
a : Cadena;
fin;
var
Formulario1: TForm1;
implementación
{$R *.DFM}
{$DEFINE AAA} // Línea de definición.
procedimiento TForm1.FormCreate(Remitente: TObject);
comenzar
a := 'Otro';
{$IFDEF AAA}
a := 'AAA';
{$ENDIF}
{$IFDEF BBB}
a := 'BBB';
{$ENDIF}
fin;
procedimiento TForm1.Button1Click (Remitente: TObject);
comenzar
Título := a;
fin;
fin.
{Nota: el texto en negrita es el código ingresado}
3. Después de compilar y ejecutar, presione el botón y verá "AAA" en la barra de título del formulario. El programa compila la declaración a := 'AAA'.
4. Cambie el segmento del programa que define la línea:
cuando se cambia a
{$DEFINIR BBB}
Cuando compile y ejecute nuevamente, verá "BBB" en la barra de título del formulario. El programa compila la declaración a := 'BBB'.
Al anular la definición de una fila o cambiar a
{$DEFINIR NADA}
u otros nombres, compílelo y ejecútelo nuevamente y verá "Otro" en la barra de título del formulario. El programa sólo compila la declaración a := 'Otro'.
tres. Cómo crear y cambiar versiones rápidamente:
Usando instrucciones de precompilación, al crear múltiples versiones del mismo programa, solo necesita encontrar las diferentes unidades en cada versión, definir símbolos de versión unificada (Símbolos) en secuencia y luego agregar instrucciones de precompilación condicionales al segmento del programa. compilar diferentes partes del programa durante la compilación real, lo que tiene un buen efecto en la estandarización del programa (definiendo un símbolo de versión unificada) y la confidencialidad (diferentes versiones compilan diferentes partes del programa).
Sin embargo, dado que este tipo de directiva precompilada solo puede actuar en la unidad actual, el inconveniente es que el símbolo de versión no se puede definir una vez en una unidad común, sino que se debe definir un símbolo de versión unificada en cada unidad. Debe asegurarse de que todos los símbolos de la versión se hayan cambiado para garantizar la exactitud de cada versión. Para ello, puede utilizar la función "Buscar en" de Delphi IDE. Archivos..." (cadenas de búsqueda en varios archivos) funcionan para encontrar todos los archivos y ubicaciones que definen los símbolos de versión y luego cambiarlos en secuencia para garantizar que todas las ubicaciones hayan sido corregidas.