Aracılığıyla paylaş


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

Bir deyimde birden fazla operasyon gerçekleştiğinde, her bölümü değerlendirilir ve çözülmüş olarak adlandırılan önceden belirlenmiş bir sıraya göre işleç önceliği.

Öncelikli kurallar

Birden fazla kategori'den işleçleri ifadeler içeren, bunlar aşağıdaki kurallara göre değerlendirilir:

  • Aritmetik ve birleştirme işleçleri aşağıdaki bölümde açıklanan öncelik sırası varsa ve tüm büyük önceliğe karşılaştırma, mantıksal ve bitwise işleçleri.

  • Tüm karşılaştırma işleçleri eşit önceliğe ve tüm mantıksal ve bitwise işleçleri büyük önceliğe, ancak aritmetik ve birleştirme işleçleri daha düşük önceliğe sahip olur.

  • Mantıksal ve bitwise işleçleri aşağıdaki bölümde açıklanan öncelik sırasını, ve tüm aritmetik, birleştirme ve karşılaştırma işleçleri daha düşük önceliğe sahiptir.

  • Eşit öncelik sırasına sahip işleçler soldan sağa değerlendirilen ifade içinde göründükleri sırada.

Öncelik sırası

İşleç önceliği aşağıdaki sırayla değerlendirilir:

fw84t893.collapse_all(tr-tr,VS.110).gifİşleç bekler

Beklemek

fw84t893.collapse_all(tr-tr,VS.110).gifAritmetik ve birleştirme işleçleri

Üs (^)

Tekli kimlik ve olumsuzlama (+, –)

Çarpma ve kayan nokta bölme (*, /)

Tamsayı bölme (\)

Aritmetik modül (Mod)

Toplama ve çıkarma (+, –)

Dize bitiştirme (&)

Aritmetik bit ÜSTKRKT (<<, >>)

fw84t893.collapse_all(tr-tr,VS.110).gifKarşılaştırma işleçleri

All comparison operators (=, <>, <, <=, >, >=, Is, IsNot, Like, TypeOf...Is)

fw84t893.collapse_all(tr-tr,VS.110).gifMantıksal ve Bitwise işleçleri

Olumsuzlama (Not)

Conjunction (And, AndAlso)

(Dahil) ayırtım (Or, OrElse)

Özel ayırtım (Xor)

fw84t893.collapse_all(tr-tr,VS.110).gifComments

= İs operatörü yalnızca eşitlik karşılaştırma işleci, atama işleci.

Dize bitiştirme operatörü (&) aritmetik işleç değil, ancak öncelikleri aritmetik iþleçlerle gruplandırılır.

Is Ve IsNot nesne başvurusu karşılaştırma işleçleri işleçlerdir.İki değeri karşılaştırmak değildir; yalnızca iki nesne değişkenleri aynı nesne örneğine başvurmak olup olmadığını belirlemek için denetleyin.

Birleşim özellikleri

Operatörleri eşit önceliğe birlikte bir ifade çarpma ve bölme göründüğünde, soldan sağa doğru bulduğu gibi derleyici her işlem değerlendirir.Aşağıdaki örnek bunu göstermektedir.

Dim n1 As Integer = 96 / 8 / 4
Dim n2 As Integer = (96 / 8) / 4
Dim n3 As Integer = 96 / (8 / 4)

Bölme ilk deyimi değerlendirir 96 / 8 (hangi sonuçları 12'de) ve bölme 12 / 4, hangi sonuçları üç içinde.Derleme işlemleri için değerlendirildiği n1 bu sipariş için açıkça belirtilmişse, soldan sağa, değerlendirme aynı olan n2.Her ikisi de n1 ve n2 üç bir sonucu vardır.Bunun tersine, n3 48, sonucunu değerlendirmek için derleyici parantez zorlamak için olan 8 / 4 ilk.

Bu davranış nedeniyle, işleçler olduğu söylenir sola ilişkilendirilebilir , Visual Basic.

Öncelik ve birleşim geçersiz kılma

Diğerleri önce değerlendirilecek bir ifadeyi bazı bölümlerini zorlamak için parantez kullanın.Bu öncelik sırası hem de sol birleşim geçersiz kılabilirsiniz.Visual Basicher zaman önce dışındaki parantez içine işlemleri gerçekleştirir. Parantez parantez içinde kullanmadığınız sürece ancak parantez içinde normal öncelik ve birleşim, tutar.Aşağıdaki örnek bunu göstermektedir.

Dim a, b, c, d, e, f, g As Double
a = 8.0
b = 3.0
c = 4.0
d = 2.0
e = 1.0
f = a - b + c / d * e
' The preceding line sets f to 7.0. Because of natural operator 
' precedence and associativity, it is exactly equivalent to the 
' following line.
f = (a - b) + ((c / d) * e)
' The following line overrides the natural operator precedence 
' and left associativity.
g = (a - (b + c)) / (d * e)
' The preceding line sets g to 0.5.

Ayrıca bkz.

Başvuru

= İşleci (Visual Basic)

İs operatörü (Visual Basic)

IsNot işleci (Visual Basic)

Like işleci (Visual Basic)

TypeOf işleci (Visual Basic)

Beklemek işleci (Visual Basic)

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

Kavramlar

İşleçleri ve ifadeleri Visual Basic