Powiel możliwe:
Arithmetic operator overloading for a generic class in C#Operator przeciążenie z rodzajowych
Oto kod dla rodzajowego klasy I zostały utworzone, aby dodać liczbę zespoloną przeciążyć operatora.
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);
}
}
podczas pracy z tym mam na błędzie,
Error: Operator '+' cannot be applied to operands of type 'T' and 'T'
może ktoś zaproponować mi sposób mogę użyć operatora przeciążenia z rodzajowych?
http://stackoverflow.com/questions/756954/arithmetic-operator-overloading-for-a-eneric-class-in- c-sharp – Habib
, a także: http://stackoverflow.com/questions/147646/solution-for-overloaded-operator-constraint-in-net-generics Brak możliwości zdefiniowania typów wartości przy przeciążeniu operatora jest poważnym ograniczeniem C# . Po prostu nie ma żadnej satysfakcjonującej pracy. – citykid
To nie powinno być ogólne. Uogólniaj tylko generyczne, gdy ma się ** tam ** dowolny typ; dlatego nazywają się * generics *. –