Mögliche Duplizieren:
Arithmetic operator overloading for a generic class in C#Betreiber mit Generika Überlastung
Hier ist der Code für die generische Klasse i erstellt haben die komplexe Zahl hinzuzufügen Betreiber zu überlasten.
public class Complex<T>
{
public T _a, _b;
public Complex(T i, T j)
{
_a = i;
_b = j;
}
public static Complex<T> operator +(Complex<T> i, Complex<T> j)
{
return new Complex<T>(i._a + j._a, i._b + j._b);
}
}
, während sie mit dieser Arbeit i einen Fehler erhalten haben,
Error: Operator '+' cannot be applied to operands of type 'T' and 'T'
kann jemand vorschlagen, mir den Weg i Betreiber Überlastung mit Generika verwenden kann?
http://StackOverflow.com/Questions/756954/arithmetic-Operator-overloading-for-a-generic-Class-in- c-sharp – Habib
und auch: http://stackoverflow.com/questions/147646/solution-for-overplaned-operator-constraint-in-net-generics Nicht in der Lage, Werttypen mit Überlastung des Operators zu definieren, ist eine schwerwiegende Einschränkung von C# . Es gibt einfach keine befriedigende Arbeit zur Verfügung. – citykid
Dies sollte nicht in erster Linie generisch sein. Machen Sie nur ein generisches, wenn es sinnvoll ist ** ** ** dort einzutippen; Deshalb heißen sie * Generika *. –