Dela via


Anvisningar: Använda en klass som definierar operatorer (Visual Basic)

Om du använder en klass eller struktur som definierar sina egna operatorer kan du komma åt dessa operatorer från Visual Basic.

Att definiera en operator för en klass eller struktur kallas även för överlagring av operatorn.

Exempel

I följande exempel används SQL-strukturen SqlString, som definierar konverteringsoperatorerna (CType Function) i båda riktningarna mellan en SQL-sträng och en Visual Basic-sträng. Använd CType(SQL-stränguttryck String)för att konvertera en SQL-sträng till en Visual Basic-sträng ochCType( Visual Basic-stränguttryck)SqlStringför att konvertera i den andra riktningen.

' Insert the following line at the beginning of your source file.
Imports System.Data.SqlTypes
Public Sub setJobString(ByVal g As Integer)
    Dim title As String
    Dim jobTitle As System.Data.SqlTypes.SqlString
    Select Case g
        Case 1
            title = "President"
        Case 2
            title = "Vice President"
        Case 3
            title = "Director"
        Case 4
            title = "Manager"
        Case Else
            title = "Worker"
    End Select
    jobTitle = CType(title, SqlString)
    MsgBox("Group " & CStr(g) & " generates title """ &
          CType(jobTitle, String) & """")
End Sub

Strukturen SqlString definierar en konverteringsoperator (CType-funktion) från String till SqlString och en annan från SqlString till String. Instruktionen som tilldelar till jobTitle använder den första operatorn, och funktionsanropet titleMsgBox använder den andra.

Kompilera koden

Se till att den klass eller struktur som du använder definierar den operator som du vill använda. Anta inte att klassen eller strukturen har definierat varje operator som är tillgänglig för överlagring. En lista över tillgängliga operatorer finns i Operator-instruktion.

Inkludera lämplig Imports instruktion för SQL-strängen i början av källfilen (i det här fallet System.Data.SqlTypes).

Projektet måste ha referenser till System.Data och System.XML.

Se även