#If...Then...#Else Yönergeleri
Visual Basic kodunun seçili bloklarını koşullu olarak derler.
Sözdizimi
#If expression Then
statements
[ #ElseIf expression Then
[ statements ]
...
#ElseIf expression Then
[ statements ] ]
[ #Else
[ statements ] ]
#End If
Parça
expression
ve #ElseIf
deyimleri için #If
gerekli, başka bir yerde isteğe bağlı. yalnızca veya False
olarak değerlendirilen True
bir veya daha fazla koşullu derleyici sabiti, değişmez değer ve işleç içeren herhangi bir ifade.
statements
Deyim bloğu için #If
gerekli, başka bir yerde isteğe bağlı. İlişkili ifade olarak değerlendirilirse True
derlenen Visual Basic program satırları veya derleyici yönergeleri.
#End If
Deyim bloğunu #If
sonlandırır.
Açıklamalar
Yüzeyde, yönergelerin #If...Then...#Else
davranışı deyimlerin davranışıyla If...Then...Else
aynı şekilde görünür. Ancak, #If...Then...#Else
yönergeler derleyici tarafından derlenenleri değerlendirirken If...Then...Else
, deyimler çalışma zamanında koşulları değerlendirir.
Koşullu derleme genellikle aynı programı farklı platformlar için derlemek için kullanılır. Ayrıca, hata ayıklama kodunun yürütülebilir bir dosyada görünmesini önlemek için de kullanılır. Koşullu derleme sırasında dışlanan kod, son yürütülebilir dosyadan tamamen atlandığından boyut veya performans üzerinde hiçbir etkisi yoktur.
Herhangi bir değerlendirmenin sonucu ne olursa olsun, tüm ifadeler kullanılarak Option Compare Binary
değerlendirilir. deyimiOption Compare
, ve #ElseIf
deyimlerindeki #If
ifadeleri etkilemez.
Not
, , #Else
#ElseIf
ve #End If
yönergelerinin #If
tek satırlı biçimi yoktur. Yönergelerin herhangi biri ile aynı satırda başka hiçbir kod görünemez.
Koşullu derleme bloğu içindeki deyimler tam mantıksal deyimler olmalıdır. Örneğin, bir işlevin yalnızca özniteliklerini koşullu olarak derleyemezsiniz, ancak işlevi öznitelikleriyle birlikte koşullu olarak bildirebilirsiniz:
#If DEBUG Then
<WebMethod()>
Public Function SomeFunction() As String
#Else
<WebMethod(CacheDuration:=86400)>
Public Function SomeFunction() As String
#End If
Örnek
Bu örnek, #If...Then...#Else
belirli deyimlerin derlenip derleneceğini belirlemek için yapısını kullanır.
#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