Compilerfehler CS1940
Für den Quelltyp "Typ" wurden mehrere Implementierungen des Abfragemusters gefunden. Mehrdeutiger Aufruf von "Methode".
Dieser Fehler wird generiert, wenn mehrere Implementierungen einer Abfragemethode definiert sind, und der Compiler nicht eindeutig ermitteln kann, welche am besten für die Abfrage verwendet werden soll. Im folgenden Beispiel haben beide Versionen von Select
dieselbe Signatur, da beide ein int
als Eingabeparameter akzeptieren und int
als Rückgabewert haben.
So beheben Sie diesen Fehler
- Stellen Sie nur eine Implementierung für jede Methode bereit.
Beispiel
Mit dem folgenden Code wird CS1940 generiert:
// cs1940.cs
using System; //must include explicitly for types defined in 3.5
class Test
{
public delegate int Dele(int x);
int num = 0;
public int Select(Func<int, int> d)
{
return d(this.num);
}
public int Select(Dele d) // CS1940
{
return d(this.num) + 1;
}
public static void Main()
{
var q = from x in new Test()
select x;
}
}
Siehe auch
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für