Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
İki ifadede kısa devre kapsayıcı mantıksal ayrıştırma gerçekleştirir.
Sözdizimi
result = expression1 OrElse expression2
Parçalar
result
Gerekli. Herhangi bir Boolean ifade.
expression1
Gerekli. Herhangi bir Boolean ifade.
expression2
Gerekli. Herhangi bir Boolean ifade.
Açıklamalar
Derlenen kod başka bir ifadenin sonucuna bağlı olarak bir ifadenin değerlendirmesini atlayabilirse mantıksal işlemin kısa devre olduğu söylenir. değerlendirilen ilk ifadenin sonucu işlemin nihai sonucunu belirlerse, ikinci ifadeyi değerlendirmeye gerek yoktur, çünkü nihai sonucu değiştiremez. Atlanan ifade karmaşıksa veya yordam çağrıları içeriyorsa kısa devre performansı artırabilir.
İfadelerden biri veya her ikisi de olarak değerlendirilirse True, result olur True. Aşağıdaki tabloda nasıl result belirlendiği gösterilmektedir.
Varsa expression1 |
Ve expression2 |
değeri result : |
|---|---|---|
True |
(değerlendirilmedi) | True |
False |
True |
True |
False |
False |
False |
Veri Türleri
işleci OrElse yalnızca Boole Veri Türü için tanımlanır. Visual Basic, ifadeyi değerlendirmeden önce her işleneni Boolean gereken şekilde dönüştürür. Sonucu sayısal bir türe atarsanız, Visual Basic sonucu Boolean türünden False0 olur ve True olur -1gibi bir türe dönüştürür.
Daha fazla bilgi için bkz. Boole Türü Dönüştürmeleri.
Aşırı Yükleme
Or İşleci ve IsTrue İşleciaşırı yüklenebilir; başka bir deyişle bir işlenen söz konusu sınıf veya yapı türüne sahip olduğunda bir sınıf veya yapı davranışını yeniden tanımlayabilir. ve IsTrue işleçlerinin aşırı yüklenmesi Or işlecin davranışını OrElse etkiler. Kodunuz ve IsTrueöğesini aşırı yükleyen Or bir sınıf veya yapı kullanıyorsaOrElse, yeniden tanımlanmış davranışlarını anladığınızdan emin olun. Daha fazla bilgi için bkz . İşleç Yordamları.
Örnek 1
Aşağıdaki örnek, iki ifadede mantıksal ayrıştırma gerçekleştirmek için işlecini kullanır OrElse . Sonuç, iki ifadeden birinin doğru olup olmadığını gösteren bir Boolean değerdir. İlk ifade ise True, ikinci ifade değerlendirilmez.
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
Yukarıdaki örnek sırasıyla , Trueve False sonuçlarını Trueüretir. hesaplamasında firstCheck, birinci ifade zaten Trueolduğundan ikinci ifade değerlendirilmez. Ancak, ikinci ifade hesaplamasında secondCheckdeğerlendirilir.
Örnek 2
Aşağıdaki örnekte iki yordam çağrısı içeren bir If...Then deyimi gösterilmektedir. İlk çağrı döndürürse True, ikinci yordam çağrılmaz. İkinci yordam, kodun bu bölümü çalıştığında her zaman gerçekleştirilmesi gereken önemli görevleri gerçekleştirirse bu beklenmeyen sonuçlara neden olabilir.
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