, , . Java Python "", "" (, Objective C, ). , :
public static Func<int,int> adderGen(int start) {
return (delegate (int i) {
start += i;
return start;
});
}
var counter = adderGen(0);
Console.WriteLine(counter(1));
Console.WriteLine(counter(1));
, , , # ( ) .
, , , , ...
var adders = new List<Func<int,int>>();
for(int start = 0; start < 5; start++) {
adders.Add(delegate (int i) {
start += i;
return start;
});
}
Console.WriteLine(adders[0](1));
Console.WriteLine(adders[4](1));
start 5 , start++ 5 for. , Java Python - , , , , . .
, Perl .