Share via


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

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

クラスまたは構造体で演算子を定義することを、演算子をオーバーロードするといいます。

使用例

次の例では、SQL 文字列と Visual Basic 文字列を相互に変換する変換演算子 (CType 関数 (Visual Basic)) を定義する SQL 構造体 SqlString にアクセスします。 SQL 文字列を Visual Basic 文字列に変換するには CType(SQL 文字列式, String) を使用し、逆の変換を行うには 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 への変換を行う変換演算子 (CType 関数 (Visual Basic)) を定義します。 title を jobTitle に代入するステートメントは最初の演算子を使用し、MsgBox 関数の呼び出しは 2 つ目の演算子を使用します。

コードのコンパイル

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

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

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

参照

処理手順

方法: 演算子を定義する (Visual Basic)

方法: 変換演算子を定義する (Visual Basic)

方法: 演算子プロシージャを呼び出す (Visual Basic)

方法: 構造体を宣言する (Visual Basic)

参照

Widening (Visual Basic)

Narrowing (Visual Basic)

Structure ステートメント

概念

演算子プロシージャ (Visual Basic)

暗黙の型変換と明示的な型変換 (Visual Basic)

拡大変換と縮小変換 (Visual Basic)