Wirklich unmöglich, eine Überladung des Rückgabetyps zu verwenden?

Ich habe eine kleine DLL in MSIL mit zwei Methoden erstellt:

float AddNumbers(int, int)
int AddNumbers(int, int)

Wie einige von Ihnen vielleicht wissen, können Sie mit MSIL Methoden erstellen, die dieselben Argumente haben, solange Sie über verschiedene Arten von Rückgabetypen verfügen (sogenannte Überladung von Rückgabetypen). Als ich nun versuchte, es von c # aus zu verwenden, gab es, wie ich es erwartet hatte, einen Fehler:

float f = ILasm1.MainClass.AddNumbers(1, 2);

Der Fehler ist:

Der Aufruf ist zwischen den folgenden Methoden oder Eigenschaften nicht eindeutig: 'ILasm1.MainClass.AddNumbers (int, int)' und 'ILasm1.MainClass.AddNumbers (int, int)'.

Kann c # wirklich nicht zwischen verschiedenen Rückgabetypen unterscheiden? Ich weiß, dass ich keine Methoden programmieren kann, die nur unterschiedliche Rückgabetypen unterscheiden, aber ich habe immer angenommen, dass sie wissen, wie man damit umgeht.

Antworten auf die Frage(7)

Ihre Antwort auf die Frage