vb.net教程https://www.xin3721.com/eschool/vbnetxin3721/
根据条件编译选定的 Visual Basic 代码块。
复制
- #If expression Then
- statements
- [ #ElseIf expression Then
- [ statements ]
- ...
- #ElseIf expression Then
- [ statements ] ]
- [ #Else
- [ statements ] ]
- #End If
部件
-
expression
对于 #If 和 #ElseIf 语句是必选的,在其他地方则是可选的。 计算结果为 True 或 False 的任意表达式,仅由一个或多个条件编译器常数、文本和运算符组成。 -
statements
对于 #If 语句块是必选的,在其他地方则是可选的。 如果所关联的表达式结果为 True,将对 Visual Basic 程序行或编译器指令进行编译。 -
#End If
终止 #If 语句块。
备注
表面上,#If...Then...#Else 指令的行为与 If...Then...Else 语句的行为相同。 但是,#If...Then...#Else 指令计算编译器要编译的内容,而 If...Then...Else 语句则计算运行时的条件。
条件编译通常用来编译不同平台上的同一个程序。 也可以用来避免调试代码出现在可执行文件中。 条件编译时被排除的代码在最终的可执行文件中被完全忽略,所以不会对大小或性能有任何影响。
不管计算的结果如何,所有的表达式都使用 Option Compare Binary 来计算。 Option Compare 语句不影响 #If 及 #ElseIf 语句中的表达式。
提示
不存在 #If、#Else、#ElseIf 和 #End If 指令的单行形式。 任何指令所在的同一行中不会出现其他代码。
示例
本示例使用 #If...Then...#Else 构造来判断是否编译某些语句。
VB复制
- #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