Compartir a través de


# DEFINE ... #UNDEF (Directiva del preprocesador)

Crea y libera constantes de tiempo de compilación.

#DEFINE ConstantNameeExpression...
#UNDEF ConstantName

Parámetros

  • ConstantName
    Especifica un nombre de constante de tiempo de compilación. El nombre de la constante debe ser un nombre válido de Microsoft Visual FoxPro que empiece con una letra o un signo de subrayado y contenga hasta 254 letras, dígitos o signos de subrayado. Para mejorar la legibilidad del programa y simplificar la depuración, escriba en mayúsculas los nombres de constantes y utilice una convención estándar para asignarles nombres.

    Precaución   No utilice palabras clave de Visual FoxPro como nombres de constantes.

    Para detener la substitución de texto para una constante creada con #DEFINE, ejecute #UNDEF ConstantName.

  • eExpression
    Especifica el valor de la constante en tiempo de compilación. eExpression puede ser un nombre o una expresión que se evalúe como un valor de tipo Character, Numeric, Currency, Date, DateTime o Logical.

    Precaución   No utilice variables del sistema en eExpression. Las variables del sistema no se evalúan hasta el tiempo de ejecución.

Observaciones

Las directivas de preprocesador #DEFINE y #UNDEF se utilizan para crear constantes de tiempo de compilación en los programas. Al crear constantes con #DEFINE en lugar de utilizar variables, puede reducir el consumo de memoria, aumentar el rendimiento y simplificar los programas.

Para crear una constante con #DEFINE, especifique el nombre de la constante con ConstantName y su valor con eExpression. Cuando se compila el programa, se realiza la sustitución de texto y la expresión de valor constante se sustituye por el nombre de la constante cada vez que aparece en el programa. Puede detener la sustitución de la constante si ejecuta #UNDEF.

La sustitución se realiza solamente en las líneas de programa que hay a continuación de la instrucción #DEFINE que crea la constante y que preceden a la instrucción #UNDEF para esa constante. La constante está disponible solamente para el programa que crea la constante.

Si #DEFINE se sitúa en un procedimiento de método o de evento en un formulario, la constante de tiempo de compilación #DEFINE está disponible solamente dentro de dicho procedimiento de método o de evento. Para que las constantes de tiempo de compilación #DEFINE estén disponibles para todos los procedimientos de método y de evento de un formulario, elija el elemento de menú Incluir archivo del menú Formulario y especifique un archivo de encabezado que contenga las constantes de tiempo de compilación #DEFINE.

Nota   Las constantes de tiempo de compilación no son reconocidas cuando se encuentran entre comillas.

Ejemplo

El programa siguiente crea una constante en tiempo de compilación llamada MAXITEMS. Esta constante se utiliza en un bucle FOR ... NEXT para mostrar los números de 1 a 10.

#DEFINE MAXITEMS 10
CLEAR
FOR gnCount = 1 TO MAXITEMS
   ? gnCount
NEXT

Vea también

COMPILE (Comando) | #IF ... #ENDIF (Directiva del preprocesador) | #IFDEF | #IFNDEF ... #ENDIF (Directiva del preprocesador)