blob: cedf161bccacd6dc06ec30f05e252a986fb13d5a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
//
// Nested anonymous methods and capturing of variables test
//
using System;
delegate void D ();
class X {
public static int Main ()
{
X x = new X();
x.M ();
e ();
Console.WriteLine ("J should be 101= {0}", j);
if (j != 101)
return 3;
Console.WriteLine ("OK");
return 0;
}
static int j = 0;
static D e;
void M ()
{
int l = 100;
D d = delegate {
int b;
b = 1;
Console.WriteLine ("Inside d");
e = delegate {
Console.WriteLine ("Inside e");
j = l + b;
Console.WriteLine ("j={0} l={1} b={2}", j, l, b);
};
};
Console.WriteLine ("Calling d");
d ();
}
}
|