共用方式為


HOW TO:使用定義運算子的類別

更新:2007 年 11 月

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

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

範例

下列範例會存取 SQL 結構 SqlString,會於 SQL 字串與 Visual Basic 字串的兩個方向間定義轉換運算子 (CType 函式)。使用 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 函式) 定義成從 String 轉換成 SqlString,另一個則是從 SqlString 轉換成 String。將 title 指派給 jobTitle 的陳述式會使用第一個運算子,而 MsgBox 函式 (Visual Basic) 呼叫則會使用第二個。

編譯程式碼

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

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

專案必須具有 System.Data 和 System.XML 的參考。如果需要加入它們,請參閱 HOW TO:在 Visual Studio 中新增或移除參考 (C#)

請參閱

工作

HOW TO:定義運算子

HOW TO:定義轉換運算子

HOW TO:呼叫運算子程序

HOW TO:宣告結構

概念

運算子程序

隱含和明確轉換

擴展和縮小轉換

參考

Widening

Narrowing

Structure 陳述式