#If...Then...#Else (Directivas)
Actualización: noviembre 2007
Compila de forma condicional bloques de código seleccionados de Visual Basic.
#If expression Then
statements
[ #ElseIf expression Then
[ statements ]
...
#ElseIf expression Then
[ statements ] ]
[ #Else
[ statements ] ]
#End If
Partes
expression
Requerida para las instrucciones #If y #ElseIf; en caso contrario, opcional. Cualquier expresión formada exclusivamente por una o más constantes de compilación condicional, literales y operadores, que se evalúa como True o False.statements
Requerida para el bloque de instrucción #If; en caso contrario, opcional. Líneas de programa de Visual Basic o directivas de compilación que se compilan si la expresión asociada se evalúa como True.#End If
Termina el bloque de instrucción #If.
Comentarios
Aparentemente, el comportamiento de las directivas #If...Then...#Else es el mismo que el de las instrucciones If...Then...Else. Sin embargo, las directivas #If...Then...#Else evalúan lo compilado por el compilador, mientras que las instrucciones If...Then...Else evalúan las condiciones en tiempo de ejecución.
La compilación condicional se utiliza habitualmente para compilar el mismo programa para plataformas distintas. También se utiliza para evitar que el código de depuración aparezca en los archivos ejecutables. El código excluido durante una compilación condicional se omite completamente en el archivo ejecutable final, de modo que no tiene ningún efecto en el tamaño ni en el rendimiento.
Independientemente del resultado de la evaluación, todas las expresiones se evalúan utilizando Option Compare Binary. La instrucción Option Compare no afecta a las expresiones de las instrucciones #If y #ElseIf.
Nota: |
---|
No existe ningún formulario de línea única de las directivas #If, #Else, #ElseIf y #End If. No puede aparecer otro código en la misma línea que cualquiera de las directivas. |
Ejemplo
En el siguiente ejemplo se utiliza el constructor #If...Then...#Else para determinar si se compilan ciertas instrucciones.
#Const CustomerNumber = 36
#If CustomerNumber = 35 Then
' Insert code to be compiled for customer # 35.
#ElseIf CustomerNumber = 36 Then
' Insert code to be compiled for customer # 36.
#Else
' Insert code to be compiled for all other customers.
#End If
Vea también
Conceptos
Información general sobre la compilación condicional