c#的委托代码

cs 复制代码
    internal class Program
    {
        //声明一个委托
        public delegate int Weituo(int a, int b);
        //加减法
        public static int Add(int a, int b)
        {
            return a + b;
        }
        public static int Sub(int a, int b) { return a - b; }
        //使用传入不然类型的委托进行计算

        public static int Func(int a, int b,Weituo weituo) {
            return weituo(a, b);
        }
        static void Main(string[] args)
        {
            //实例化一个委托
            Weituo weituo=new Weituo(Add);
           int aa= weituo(2, 4);
            Console.WriteLine(aa);
            Console.WriteLine("调用方法进行委托");
            Func(15, 6, Sub);
            Console.WriteLine(Func(15, 6, Sub));


        }
    }

Func方法的参数列表中传入了一个Calc委托,让这个方法具有了动态计算的能力

在外面调用时,我们只要根据业务需求,给实参传入不同的方法,即可在同一方法中得到不同的结果,也就是上文所提到的在方法中使用委托参数,可以使该方法增加可扩展性

相关推荐
xiaoshuaishuai818 小时前
C# Codex 脚本编写
java·服务器·数据库·c#
weixin_4474432521 小时前
AI启蒙Lean4
python·c#
我是唐青枫1 天前
C#.NET ValueTaskSource 深入解析:零分配异步、ManualResetValueTaskSourceCore 与使用边界
c#·.net
iCxhust1 天前
C#程序,窗体1向窗体2的textbox控件写入字符串“hello”
开发语言·c#
iCxhust1 天前
C#如何实现textbox文本多行输出 且自动换行输出
开发语言·c#
政沅同学1 天前
C# 一种很好用的设计模式 不同对象之间进行解耦通信
设计模式·c#
咩图1 天前
C#进程通讯-命名管道通讯
c#·命名管道·进程通讯
SunnyDays10111 天前
如何使用 C# 高效实现 Excel 与 CSV 的互相转换
c#·excel·csv
Byron Loong1 天前
【网络】C#TCP 通讯
网络·tcp/ip·c#
geovindu1 天前
密码进行加盐哈希 using CSharp,Python,Go,Java
java·python·golang·c#·哈希算法