1

以下のコードが機能したためです。「Net 2.0」では動作しません。「ネット4.0」?メソッドを追加しないソリューションは何ですか

Public Shared Operator >(ByVal variante1 As Double, ByVal variante2 As MyClass1) As Boolean
Public Shared Operator <(ByVal variante1 As Double, ByVal variante2 As MyClass1) As Boolean

エラー メッセージ: アクセス可能な '>' がこれらの引数に対して最も具体的でないため、オーバーロード解決に失敗しました: 'Public Shared Operator >(variante1 As MyClass1, variante2 As MyClass1) As Boolean': Not most specific Public Shared Operator >(left as Double, right as Double) As Boolean': あまり具体的ではない


Public Class Form1

    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load

      Dim value1 As New MyClass1
      Dim value2 As Double = 0

      Dim result As Boolean = value2 > value1

    End Sub
End Class

Public Class MyClass1

    Public Shared Operator >(ByVal variante1 As MyClass1, ByVal variante2 As MyClass1) As Boolean
        Return True
    End Operator

    Public Shared Operator <(ByVal variante1 As MyClass1, ByVal variante2 As MyClass1) As Boolean
        Return True
    End Operator

    Public Shared Widening Operator CType(ByVal valor As Double) As MyClass1
        Return New MyClass1(valor)
    End Operator

    Public Shared Widening Operator CType(ByVal valor As MyClass1) As Double
        Return 0
    End Operator

    Public Sub New()
    End Sub

    Public Sub New(valor As Double)
    End Sub

End Class
4

0 に答える 0