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.
Bir sınıf veya yapı tanımladıysanız, işlenenlerden biri veya her ikisi de sınıfınızın veya yapınızın türünde olduğunda standart işlecin (, veya *gibi<>And) davranışını tanımlayabilirsiniz.
Standart işleci sınıf veya yapı içinde bir işleç yordamı olarak tanımlayın. Tüm işleç yordamları olmalıdır PublicShared.
Bir sınıf veya yapıda bir işleç tanımlamak, işleci aşırı yükleme olarak da adlandırılır.
Örnek
Aşağıdaki örnek adlı +bir yapının işlecini tanımlarheight. Yapı, ayak ve inç cinsinden ölçülen yükseklikleri kullanır. Bir inç 2,54 santimetre ve bir ayak 12 inçtir. Oluşturucu normalleştirilmiş değerleri (inç < 12.0) sağlamak için modulo 12 aritmetik gerçekleştirir.
+ işleci, normalleştirilmiş değerler oluşturmak için oluşturucuyu kullanır.
Public Shadows Structure height
' Need Shadows because System.Windows.Forms.Form also defines property Height.
Private feet As Integer
Private inches As Double
Public Sub New(ByVal f As Integer, ByVal i As Double)
Me.feet = f + (CInt(i) \ 12)
Me.inches = i Mod 12.0
End Sub
Public Overloads Function ToString() As String
Return Me.feet & "' " & Me.inches & """"
End Function
Public Shared Operator +(ByVal h1 As height,
ByVal h2 As height) As height
Return New height(h1.feet + h2.feet, h1.inches + h2.inches)
End Operator
End Structure
Yapıyı height aşağıdaki kodla test edebilirsiniz.
Public Sub consumeHeight()
Dim p1 As New height(3, 10)
Dim p2 As New height(4, 8)
Dim p3 As height = p1 + p2
Dim s As String = p1.ToString() & " + " & p2.ToString() &
" = " & p3.ToString() & " (= 8' 6"" ?)"
Dim p4 As New height(2, 14)
s &= vbCrLf & "2' 14"" = " & p4.ToString() & " (= 3' 2"" ?)"
Dim p5 As New height(4, 24)
s &= vbCrLf & "4' 24"" = " & p5.ToString() & " (= 6' 0"" ?)"
MsgBox(s)
End Sub