Я пытаюсь определить универсальную функцию, чтобы дать наибольшее значение набора параметров. Это выглядит так:
public static TResult Max<TResult>(params TResult[] items)
{
TResult result = items[0];
foreach (var item in items)
{
if (item > result)
result = item;
}
return result;
}
Это все хорошо, за исключением того, что компилятор хрипит в строке "item> result". Что мне нужно, так это способ ограничить TResult наличием оператора> (или <тоже будет работать). Однако я не вижу легкодоступного интерфейса для этого. Поскольку это частичное упорядочение, это кажется довольно распространенной задачей. Я что-то упустил в гигантской документации .NET? </p>