Share via


HOW TO:使用定義運算子的類別 (Visual Basic)

如果使用的是定義它自己運算子的類別或結構,則可從 Visual Basic 中存取那些運算子。

在類別或結構上定義運算子,也稱為「多載」(Overload) 運算子。

範例

下列範例會存取 SQL 結構 SqlString,會於 SQL 字串與 Visual Basic 字串的兩個方向間定義轉換運算子 (CType 函式 (Visual Basic))。 使用 CType(SQL string expression, String) 將 SQL 字串轉換成 Visual Basic 字串,而 CType(Visual Basic string expression, SqlString) 則可朝另一個方向轉換。

' 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

SqlString 結構會將轉換運算子 (CType 函式 (Visual Basic)) 定義成從 String 轉換成 SqlString,另一個則是從 SqlString 轉換成 String。 將 title 指派給 jobTitle 的陳述式會使用第一個運算子,而 MsgBox 函式呼叫則會使用第二個。

編譯程式碼

請確定所使用的類別或結構會定義您想使用的運算子。 不要假設類別或結構已定義可用於多載化的每個運算子。 如需可用運算子的清單,請參閱 Operator 陳述式

在原始程式檔開頭處包含 SQL 字串的適當 Imports 陳述式 (此例中為 System.Data.SqlTypes)。

專案必須具有 System.Data 和 System.XML 的參考。

請參閱

工作

HOW TO:定義運算子 (Visual Basic)

HOW TO:定義轉換運算子 (Visual Basic)

HOW TO:呼叫運算子程序 (Visual Basic)

HOW TO:宣告結構 (Visual Basic)

參考

Widening (Visual Basic)

Narrowing (Visual Basic)

Structure 陳述式

概念

運算子程序 (Visual Basic)

隱含和明確轉換 (Visual Basic)

擴展和縮小轉換 (Visual Basic)