Мои две версии следующих объявлений работают нормально.
1) Func<int,int,int> findMax=Max;
Console.WriteLine("Max={0}",findMax(10,20));
2)Func<int,int,int> findMax=new Func<int,int,int>(Max);
Console.WriteLine("Max={0}",findMax(10,20));
, где
public static T Max<T>(T a, T b) where T:IComparable
{
if (a.CompareTo(b) > 0) return a;
else return b;
}
В листинге 2 я создал экземпляры делегатов, а в листинге 1 - нет. Как работает код для листинга 1 без создания экземпляра делегата Func?