static int d ( Func<int,int> g ) { return g(g(1)); } static int p (int x) { Func<int,int> f = y => x + y; return d (f); }
Betrachte Aufruf p(3)
Das innere Unterprogramm f
Dazu Closure konstruieren:
f
Wenn Unterprogramme als Argumente übergeben werden,
steht der statische Vorgänger im Stack.
(ansonsten muß man den Vorgänger-Frame auf
andere Weise retten, siehe später)
Johannes Waldmann
2014-03-31