Closure. Замыкания. Как передать необходимый параметр - C#
Формулировка задачи:
Итак есть делегат
Теперь куда мы должны подать этот делегат как аргумент
Если вынести эту лямбду в отдельную функцию. Как потом подать descending?
То есть:
public delegate int MyComparer<T>(T left, T right);
bool descending = true;
list.Sort((int left, int right) => (descending == false) ? left.CompareTo(right) : -left.CompareTo(right));list.Sort(FuncToSort);
Решение задачи: «Closure. Замыкания. Как передать необходимый параметр»
textual
Листинг программы
class Sorter
{
public bool descending;
public void FuncToSort(int left, int right)
{
return (descending == false) ? left.CompareTo(right) : -left.CompareTo(right);
}
}