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委托,让这个方法具有了动态计算的能力

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

相关推荐
人工智能AI技术1 小时前
GTC直击|C#对接NVIDIA物理AI,工业仿真一键落地实战教程
人工智能·c#
LAYONTHEGROUND2 小时前
如何通过 C# 实现 Excel 文件转 Markdown 表格
c#
铁打的阿秀2 小时前
.net C# 打印pdf添加水印实现
pdf·c#·.net
阿蒙Amon2 小时前
C#常用类库-详解Moq
开发语言·c#·log4j
格林威2 小时前
工业相机彩色图像采集:为什么我的图是绿色的?附海康/Basler/堡盟相机设置
开发语言·人工智能·数码相机·opencv·计算机视觉·c#·工业相机
爱炸薯条的小朋友3 小时前
C#使用反射,特性,表达式树仿写AutoMapper
开发语言·c#
似水明俊德3 小时前
11-C#
开发语言·c#
人工智能AI技术3 小时前
.NET 9实战|最新C# AI Agent开发,Semantic Kernel+OpenClaw双剑合璧
人工智能·c#
我是唐青枫3 小时前
C#.NET stackalloc 深入解析:栈上分配、Span 配合与使用边界
c#·.net
一个帅气昵称啊4 小时前
.Net基于AgentFramework中智能体Agent Skill集成Shell命令实现小龙虾mini版
ai·c#·.net·openclaw