方法: 演算子プロシージャを呼び出す (Visual Basic)
演算子プロシージャは、式で演算子記号を使用して呼び出します。 変換演算子の場合は、CType 関数を呼び出して、あるデータ型から別のデータ型に値を変換します。
演算子プロシージャを明示的に呼び出すことはありません。 演算子を通常使用する場合と同様に、代入ステートメントまたは式で、演算子または CType
関数を使用するだけです。 Visual Basic が演算子プロシージャを呼び出します。
クラスまたは構造体での演算子の定義は、演算子の "オーバーロード" とも呼ばれます。
演算子プロシージャを呼び出すには
通常どおり、式で演算子記号を使用します。
オペランドのデータ型がその演算子に適しており、正しい順序であることを確認します。
演算子は想定どおりに式の値を返します。
変換演算子プロシージャを呼び出すには
式内で
CType
を使用します。オペランドのデータ型が変換に適しており、正しい順序であることを確認します。
CType
は変換演算子プロシージャを呼び出し、変換された値を返します。
例
次の例では、2 つの TimeSpan 構造体を作成し、それらを合計して、結果を 3 番目の TimeSpan 構造体に格納します。 TimeSpan 構造体では、複数の標準演算子をオーバーロードする演算子プロシージャを定義します。
Dim firstSpan As New TimeSpan(3, 30, 0)
Dim secondSpan As New TimeSpan(1, 30, 30)
Dim combinedSpan As TimeSpan = firstSpan + secondSpan
Dim s As String = firstSpan.ToString() &
" + " & secondSpan.ToString() &
" = " & combinedSpan.ToString()
MsgBox(s)
TimeSpan は標準の +
演算子をオーバーロードするため、前の例では combinedSpan
の値を計算するときに演算子プロシージャを呼び出します。
会話演算子プロシージャの呼び出しの例については、「方法: 演算子を定義するクラスを使用する」をご覧ください。
コードのコンパイル
使用しているクラスまたは構造体で、使用する演算子が定義されていることを確認します。
関連項目
.NET