委托

委托:委托是一种可用于封装命名或匿名方法的引用类型。

示例:

using System;

namespace DelegateTest
{
    delegate int DoubleAction(int value);
    delegate int MultiplyAction(int a, int b);
    delegate int AddAction(int a, int b);
    delegate int SubtractAction(int a, int b);

    class Program
    {
        public static int Double(int value)
        {
            return 2 * value;
        }

        public int Multiply(int a, int b)
        {
            return a * b;
        }

        static void Main(string[] args)
        {
            //带有命名静态方法的委托
            DoubleAction doubleAction = Program.Double;
            Console.WriteLine("doubleAction(20)'s result is " + doubleAction(20));

            //带有命名实例方法的委托
            Program pro = new Program();
            MultiplyAction multiplyActin = pro.Multiply;
            Console.WriteLine("multiplyActin(10, 20)'s result is " + multiplyActin(10, 20));

            //带有匿名方法的委托(C# 2.0之后的版本)
            AddAction addAction = delegate(int a, int b)
            {
                return a + b;
            };
            Console.WriteLine("addAction(10, 20)'s result is " + addAction(10, 20));

            //带有Lambda表达式的委托(C# 3.0之后的版本)
            SubtractAction subtractAction = (int a, int b) => (a - b);
            Console.WriteLine("subtractAction(30, 20)'s result is " + subtractAction(30, 20));

            Console.WriteLine("Press any key to exit.");
            Console.ReadKey();
        }
    }
}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值