次の方法で共有


方法: 演算子を定義するクラスを使用する (Visual Basic)

独自の演算子を定義するクラスまたは構造体を使用している場合は、Visual Basic からそれらの演算子にアクセスできます。

クラスまたは構造体に対する演算子の定義は、演算子 のオーバーロード とも呼ばれます。

次の例では、SQL 構造体 SqlStringにアクセスします。SQL 文字列と Visual Basic 文字列の間の双方向に変換演算子 (CType 関数) を定義します。 CType( SQL 文字列式を使用String)、SQL 文字列を Visual Basic 文字列に変換し、CType(Visual Basic 文字列式を使用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構造体は、からStringへの変換演算子 (SqlString) と、SqlStringからStringへの別の変換演算子を定義します。 titlejobTitleを割り当てるステートメントでは最初の演算子が使用され、MsgBox関数呼び出しでは 2 番目の演算子が使用されます。

コードをコンパイルする

使用しているクラスまたは構造体で、使用する演算子が定義されていることを確認します。 クラスまたは構造体がオーバーロードに使用できるすべての演算子を定義しているとは想定しないでください。 使用可能な演算子の一覧については、「 演算子ステートメント」を参照してください。

ソース ファイルの先頭に SQL 文字列の適切な Imports ステートメントを含めます (この場合は System.Data.SqlTypes)。

プロジェクトには、System.Data と System.XML への参照が必要です。

こちらも参照ください