C#03

来源:互联网 发布:linux rm删除指定文件 编辑:程序博客网 时间:2024/06/04 20:03

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    public delegate void MyFirstDelegate(int i,int j);
    class Program
    {
        static void Main(string[] args)
        {
            Program p = new Program();
            MyFirstDelegate MY =new MyFirstDelegate(p.Method);
            MY(10, 20);
            MY += p.Method1;
            MY(20, 20);
            MY -= p.Method;
            MY(20, 20);
            Console.WriteLine();

            /*+=这相于给这个委托实例增加一个新的委托,那么此时这个委托
             实例就有两个委托,执行时,分别执每一个委托,
             -= 这相当于把委托实例中的p.Method这个委托去掉,那么委托实便
             在执行的时候,就不用执行这个委托任务了*/

 

            Console .ReadKey();
        }
        void Method(int i, int j)
        {

            Console.WriteLine(i + j);
       
        }

        void Method1(int i, int j)
        {

            Console.WriteLine(i * j);

        }
    }


}

 

0 0
原创粉丝点击