#If...Then...#Else Yönergeleri

Seçilen kod bloklarını koşullu Visual Basic derler.

Syntax

#If expression Then
   statements
[ #ElseIf expression Then
   [ statements ]
...
#ElseIf expression Then
   [ statements ] ]
[ #Else
   [ statements ] ]
#End If

Bölümler

expression
ve #If deyimleri #ElseIf için gereklidir, başka bir yerde isteğe bağlıdır. veya olarak değerlendirilen bir veya daha fazla koşullu derleyici sabiti, değişmez değer ve işleçlerden oluşan herhangi bir True False ifade.

statements
Deyim bloğu #If için gereklidir, başka bir yerde isteğe bağlıdır. Visual Basic değerlendirmesi olursa derlenmiş program satırlarını veya derleyici yönergelerini True içerir.

#End If
Deyim bloğu #If sonlandırılır.

Açıklamalar

Yüzeyde, yönergelerinin #If...Then...#Else davranışı deyimlerinin davranışıyla aynı If...Then...Else görünür. Ancak, yönergeleri derleyici tarafından derlenmiş olan şeyi değerlendirirken #If...Then...#Else If...Then...Else deyimler çalışma zamanında koşulları değerlendirir.

Koşullu derleme genellikle farklı platformlar için aynı programı 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 atlanır, bu nedenle boyut veya performans üzerinde hiçbir etkisi yoktur.

Herhangi bir değerlendirmenin sonucundan bağımsız olarak tüm ifadeler kullanılarak Option Compare Binary değerlendirilir. deyimi, Option Compare ve deyimlerinde #If #ElseIf ifadeleri etkilemez.

Not

, , ve yönergelerinin #If #Else tek #ElseIf #End If satırlı biçimi yoktur. Yönergelerin herhangi biri ile aynı satırda başka kod görünmez.

Koşullu derleme bloğu içindeki deyimlerin tam mantıksal deyimleri olması gerekir. Örneğin, yalnızca bir işlevin özniteliklerini koşullu olarak derleyeyesiniz, ancak işlevini öznitelikleriyle birlikte koşullu olarak bildiresiniz:

#If DEBUG Then
<WebMethod()>
Public Function SomeFunction() As String
#Else
<WebMethod(CacheDuration:=86400)>
Public Function SomeFunction() As String
#End If

Örnek

Bu örnekte #If...Then...#Else yapısı, belirli deyimlerin derlenmiş olup olmadığını belirlemek için 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

Ayrıca bkz.