About delegate....
什么是委托?
--新华字典--
1.亦作"委托"。
2.将自己的事务嘱托他人代为处理。
3.交结,结纳。
4.犹依托,依靠。
- -! 我觉得在.NET中委托的解释应该选第二个
1
namespace AboutDelegate
2
{
3
class Program
4
{
5
//我叫委托,我啥也不会,只会指挥别人干活
6
//我手下的人必须跟我一个思路听我指挥,否则我不聘用他 --参数类型,返回值类型与委托一致
7
public delegate void MyDelegate(string str);
8
9
//我的员工A
10
static void EmployeeA(string task)
11
{
12
Console.WriteLine(task + "完成了,我是员工A");
13
}
14
//员工B
15
static void EmployeeB(string task)
16
{
17
Console.WriteLine(task + "完成了,我是员工B");
18
}
19
//员工C
20
static void EmoloyeeC(string task)
21
{
22
Console.WriteLine(task + "没完成,老子辞职不干了!");
23
}
24
25
26
//我的工作单位Main
27
static void Main(string[] args)
28
{
29
//Boss让MyDelegate把厕所刷了 MyDelegate把任务移交给了EmployeeA
30
MyDelegate taskA = new MyDelegate(EmployeeA);
31
taskA("刷厕所");
32
//Boss让MyDelegate把电冰箱修好
33
MyDelegate taskB = new MyDelegate(EmployeeB);
34
taskB("修电冰箱");
35
//Boss让MyDelegate找出拉登来
36
MyDelegate taskC = new MyDelegate(EmoloyeeC);
37
taskC("出现吧!拉登!");
38
39
40
41
Console.WriteLine("\n--------------集体任务!(串联)囧---------------");
42
MyDelegate task = taskA + taskB + taskC;
43
task("打豆豆!");
44
//MyDelegate辞掉了C
45
task -= taskC;
46
47
48
Console.WriteLine("\n---------------员工C被开除之后-----------------");
49
//执行
50
task("打豆豆!");
51
Console.ReadLine();
52
}
53
}
54
}
55

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

44

45

46

47

48

49

50

51

52

53

54

55
