вот код
class Program
{
public static bool IsGreaterThan<T>(T x, T y) where T : IComparable<T>
{
return (x.CompareTo(y) > 0);
}
static void Main(string[] args)
{
var result = IsGreaterThan(20,10);
Console.WriteLine(result);
}
}
Просто посмотрите, когда вызываете универсальный метод, такой как IsGreaterThan(20,10);
, тогда тип INT не проходит ... так как он работает? Они должны назвать это как IsGreaterThan<int>(20,10)
Если сигнатура метода будет похожа на public static bool IsGreaterThan<INT>(T x, T y) where T : IComparable<T>
, то должна ли она работать или нет, если мы вызываем метод без указания типа, как IsGreaterThan (20,10); сюда? .... спасибо