Aracılığıyla paylaş


OrElse işleci (Visual Basic)

Short-circuiting iki deyim üzerinde dahil mantıksal disjunction gerçekleştirir.

result = expression1 OrElse expression2

Bölümleri

  • result
    Gerekli.Herhangi bir Boolean ifadesi.

  • expression1
    Gerekli.Herhangi bir Boolean ifadesi.

  • expression2
    Gerekli.Herhangi bir Boolean ifadesi.

Notlar

Mantıksal bir işlem olduğu söylenir short-circuiting derlenmiş kodu başka bir ifadenin sonucunu bağlı bir ifadenin değerlendirmesi devre dışı bırakabilir.Değerlendirilen ilk deyimin sonucu işlem sonucunu belirler, ikinci deyim değerlendirmek için gerek yoktur sonucunu değiştiremezsiniz çünkü.Short-circuiting geçildiğinde ifade karmaşık veya yordam çağrıları içeriyorsa performansını artırabilirsiniz.

Veya her ikisi için değerlendirebilir, True, result olan True.Aşağıdaki tabloda gösterilmektedir nasıl result belirlenir.

If expression1 is

And expression2 is

Değeri result olduğu

True

(Değerlendirilmedi)

True

False

True

True

False

False

False

Veri türleri

OrElse İşleci yalnızca tanımlı Boolean veri türü (Visual Basic).Visual Basic için gerektiğinde her bir işlenen dönüştürür Boolean tamamen işlemi gerçekleştirir ve Boolean.Bir sayısal tür sonucu atarsanız, Visual Basic buradan dönüştürür Boolean bu tür için.Bu beklenmeyen bir davranış produce.Örneğin, 5 OrElse 12 neden –1 için dönüştürüldüğünde Integer.

Aşırı

Veya işleci (Visual Basic) Ve IsTrue işleci (Visual Basic) olabilir aşırı, o sınıf veya yapı türü bir işlenen sahip olduğunda bir sınıf veya yapı davranışlarını tanımlayabilirsiniz, anlamına gelir.Aşırı Or ve IsTrue işleçleri davranışını etkileyen OrElse işleci.Kodunuzu kullanıyorsa, OrElse bir sınıf veya overloads yapı Or ve IsTrue, yeniden tanımlanan davranışlarını anladığınızdan emin olun.Daha fazla bilgi için bkz. Operatör yordamları (Visual Basic).

Örnek

Aşağıdaki örnek OrElse mantıksal disjunction iki deyim üzerinde gerçekleştirmek için işleci.Sonuç bir Boolean gösteren bir değer ya da iki ifadeler olup true.İlk ifade, True, ikinci değil değerlendirilir.

Dim a As Integer = 10
Dim b As Integer = 8
Dim c As Integer = 6
Dim firstCheck, secondCheck, thirdCheck As Boolean
firstCheck = a > b OrElse b > c
secondCheck = b > a OrElse b > c
thirdCheck = b > a OrElse c > b

Önceki örnekte sonuçları üretir True, True, ve False sırasıyla.Hesaplamasına firstCheck, ilk olduğundan İkinci ifade değerlendirilmez True.Ancak, ikinci hesaplanmasında deyiminin secondCheck.

Aşağıdaki örnekte gösterildiği bir If...Then iki yordam çağrıları içeren ifade.İlk çağrı döndürürse True, ikinci yordamı çağrılmaz.Bu bölüm kodu çalıştırdığında, her zaman gerçekleştirilmesi gereken önemli görevleri ikinci yordam gerçekleştirir, bu beklenmeyen sonuçlara neden.

If testFunction(5) = True OrElse otherFunction(4) = True Then
    ' If testFunction(5) is True, otherFunction(4) is not called.
    ' Insert code to be executed.
End If

Ayrıca bkz.

Başvuru

/ Bitsel Mantıksal operatörler (Visual Basic)

Visual Basic'te işleç önceliği

(Visual Basic) işlevine göre listelenen işleçleri

Veya işleci (Visual Basic)

IsTrue işleci (Visual Basic)

Kavramlar

Visual Basic'te mantıksal ve Bitsel işleçler