Integer
VB.NET では、異なる型 ( 、Long
、Decimal
、 )の数値変数の拡張メソッドが必要な場合Double
、これらに対して常に複数のメソッドを定義する必要があります。
<Extension()> Public Function Add(a As Integer, b As Integer) As Integer
Return a + b
End Function
<Extension()> Public Function Add(a As Long, b As Long) As Long
Return a + b
End Function
<Extension()> Public Function Add(a As Double, b As Double) As Double
Return a + b
End Function
<Extension()> Public Function Add(a As Decimal, b As Decimal) As Decimal
Return a + b
End Function
1 つの操作についてはこれで問題ありませんが、作成したいメソッドが多ければ多いほど、複製を行う必要があります。
そうするための一般的な方法はありますか?私はこのようなものを見たいと思っています (疑似コード):
<Extension()> _
Public Function Add(Of T As Numeric)(a As T, b As T) As T
Return a + b
End Function
または、そうするための他の概念はありますか?