Poniższa nie kompiluje:C#: Funkcje rekurencyjne z lambdas
Func<int, int> fac = n => (n <= 1) ? 1 : n * fac(n - 1);
zmienna lokalna 'fac' nie może być zainicjowana przed uzyskaniem dostępu
Jak można zarabiać rekurencyjnej funkcji z lambdas?
[Aktualizacja]
Tutaj są również dwa linki, które znalazłem ciekawy otrzymuje brzmienie:
- Eric Lippert's "Why does a recursive lambda cause a definite assignment error?"
- Anonymous Recursion in C#
Czy naprawdę chcesz? To wygląda na koszmar dla łatwości utrzymania i zrozumienia ... – Ian
cóż, może tylko koncepcja –