委托的组合
委托是可以相加的,可以形成一个新的委托对象,
调用这个新的委托对象的时候,会按顺序把组合的委托依次执行;
MyDel zh = new MyDel(F1) + new MyDel(F1) + new MyDel(F1);
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
|
class Program { static void Main(string[] args) { MyDel d1 = F1; MyDel d2 = F2; MyDel d3 = F3; MyDel zh = d1 + d2 + d3; zh(6);
MyDel zh2 = d1 + d3; Console.WriteLine("第二次:"); zh2(8); Console.WriteLine("第三次:"); zh = zh - d1; zh(3); Console.ReadKey();
}
static void F1(int i) { Console.WriteLine("我是F1=" + i); } static void F2(int i) { Console.WriteLine("我是F2=" + i * 2); } static void F3(int i) { Console.WriteLine("我是F3=" + i * i); }
delegate void MyDel(int i);
}
|
近期评论