所謂委託的加法就是
public delegate void MyDelegate();
public class program
{
static void Main()
{
MyDelegate my1 = new MyDelegate(MyMethod1);
MyDelegate my2 = new MyDelegate(MyMethod2);
MyDelegate my3 = my1 + my2;
my3();
Console.ReadKey();
}
public static void MyMethod1()
{
Console.WriteLine("method1");
}
public static void MyMethod2()
{
Console.WriteLine("method2");
}
}
它能將二個delegate合在一起,另外也可以這樣寫
public delegate void MyDelegate();
public class program
{
static void Main()
{
MyDelegate my1 = new MyDelegate(MyMethod1);
my1 += MyMethod2;
my1();
Console.ReadKey();
}
public static void MyMethod1()
{
Console.WriteLine("method1");
}
public static void MyMethod2()
{
Console.WriteLine("method2");
}
}
減法的概念是一樣的,就不多說了
但使用委託加減,有一些觀念要注意
1. 委託加減的先後順序將是執行的先後順序.
2. 當你的委託有返回值或out值時,只有最後一個委託才會生效.
留言列表