您的位置:首页 > 其它

关于委托的一个简单小练习

2016-05-03 18:43 232 查看
using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Threading.Tasks;

namespace 委托的第一个实例

{

    class Program

    {

        static void Main(string[] args)

        {
            CalculatorDelegate CalDelegate = new CalculatorDelegate(add);

//第三步;第一委托的一个对象,但是注意,委托的对象在使用前一定要实例化,


      //也就是实例化的时候需要指明这个委托对象默认调用哪个方法(函数)

            int result = CalDelegate(10, 30);//第四步:通过委托的对象调用需要实现方法(函数),并且在这里传参;

            Console.WriteLine(result);

            CalDelegate -= add;//这一行的作用是:取消委托对象之前所关联的add方法(函数)

            CalDelegate += Subtraction;//这一行的作用是:让委托对象与Subtraction的方法(函数)关联起来,

            result = CalDelegate(20, 10);////用委托对象调用上面关联的那个方法;

            Console.WriteLine(result);

            Console.ReadKey();

        }

        static int add(int a, int b)//第二步:根据委托定义的函数原型编写需要实现的方法(函数);

                                    //即就是要确保方法的函数返回值类型,参数值类型和个数要与委托的函数一致;

        {

            return a + b;

        }

        static int Subtraction(int a, int b)

        {

            return a - b;

        }

    }

    public delegate int CalculatorDelegate(int a, int b);

    //第一步 、首先我们声明一个委托(注意:委托的声明一般要写在类外)

    //声明委托的办法是:public +delegate 关键字+ 函数的返回值类型+函数名+(参数的个数 和参数类型)

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: