Mitglied mit derselben Signatur, das bereits mit unterschiedlichen Typeinschränkungen definiert wurde
Ich bin auf ein Problem mit Überladungsmethoden gestoßen, die unterschiedliche Einschränkungen haben, die exklusiv erscheinen. Das ist mein Beispiel:
public class A
{
public void Do<T>() where T : class
{
}
public void Do<T>() where T : struct
{
}
}
Und dies kompiliert nicht mit dem folgenden Fehler "Mitglied mit der gleichen Signatur bereits definiert". Ist es möglich, beide Bedingungen gleichzeitig zu erfüllen, oder ist es nur die Einschränkung des C # -Compilers?