委托的小例子

 

 

class TestDelegate
    {
        
public delegate void CalculateDelegate(int x,int y);

        
public static void Add(int x,int y)
        {
            Console.WriteLine(x 
+ y);
        }

        
public static void Substract(int x, int y)
        {
            Console.WriteLine(x 
- y);
        }

        
public static void Main()
        {
            CalculateDelegate myDelegate 
= new CalculateDelegate(Add);
            myDelegate 
+= new CalculateDelegate(Substract);    //将多个方法绑定到一个委托变量,在调用一个方法时,可以依次执行所有方法,这种技术叫多播委托。
            myDelegate -= new CalculateDelegate(Add);  //用+=和-=创建委托链
            myDelegate(25);   //运行结果:-3
        }
    }

 

 

posted on 2008-08-03 11:01  王丹小筑  阅读(194)  评论(0)    收藏  举报

导航