Compilación condicional en Visual Basic
En la compilación condicional, determinados bloques de código de un programa se compilan de forma selectiva mientras que otros se omiten.
Por ejemplo, es posible que desee escribir instrucciones de depuración que comparen la velocidad de diferentes enfoques con la misma tarea de programación, o puede que desee encontrar una aplicación para varios lenguajes. Las instrucciones de compilación condicional están diseñadas para ejecutarse durante el tiempo de compilación, no en tiempo de ejecución.
Denota bloques de código que se compilarán condicionalmente con la #If...Then...#Else directiva . Por ejemplo, para crear versiones en francés y alemán de la misma aplicación a partir del mismo código fuente, inserte segmentos de código específicos de la plataforma en instrucciones mediante las constantes #If...Then predefinidas FrenchVersion y GermanVersion . En el ejemplo siguiente se muestra cómo:
#If FrenchVersion Then
' <code specific to the French language version>.
#ElseIf GermanVersion Then
' <code specific to the German language version>.
#Else
' <code specific to other versions>.
#End If
Si establece el valor de la constante de compilación condicional en en tiempo de compilación, se compila el código condicional para FrenchVersion True la versión en francés. Si establece el valor de la GermanVersion constante en , el compilador usa la versión en True alemán. Si ninguno se establece en True , se ejecuta el código del último Else bloque.
Nota
La función de autocompletar no funcionará al editar código y usar directivas de compilación condicional si el código no forma parte de la rama actual.
Declarar constantes de compilación condicional
Puede establecer constantes de compilación condicional de una de estas tres maneras:
En el Project diseñador
En la línea de comandos cuando se usa el compilador de línea de comandos
En el código
Las constantes de compilación condicional tienen un ámbito especial y no se puede acceder a estas desde código estándar. El ámbito de una constante de compilación condicional depende de la forma en que se establezca. En la tabla siguiente se muestra el ámbito de las constantes declaradas mediante cada una de las tres formas mencionadas anteriormente.
| Cómo se establece la constante | Ámbito de constante |
|---|---|
| Diseñador de proyectos | Público para todos los archivos del proyecto |
| Línea de comandos | Público a todos los archivos pasados al compilador de la línea de comandos |
#Const instrucción en el código |
Privado en el archivo en el que se declara |
| Para establecer constantes en el Diseñador de Project |
|---|
| - Antes de crear el archivo ejecutable, establezca constantes en Project Designer siguiendo los pasos proporcionados en Administración de Project y Propiedades de la solución. |
| Para establecer constantes en la línea de comandos |
|---|
- Use el modificador -d para escribir constantes de compilación condicional, como en el ejemplo siguiente:vbc MyProj.vb /d:conFrenchVersion=–1:conANSI=0No se requiere espacio entre el modificador -d y la primera constante. Para obtener más información, vea -define (Visual Basic). Las declaraciones de línea de comandos invalidan las declaraciones especificadas en Project Designer, pero no las borran. Los argumentos establecidos en Project Designer permanecen en vigor para las compilaciones posteriores. Al escribir constantes en el propio código, no hay reglas estrictas en cuanto a su ubicación, ya que su ámbito es el módulo completo en el que se declaran. |
| Para establecer constantes en el código |
|---|
| : coloque las constantes en el bloque de declaración del módulo en el que se usan. Esto ayuda a mantener el código organizado y más fácil de leer. |
Temas relacionados
| Title | Descripción |
|---|---|
| Convenciones de código y estructura de programas | Proporciona sugerencias para facilitar la lectura y el mantenimiento del código. |