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

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

相关推荐
CompaqCV4 小时前
OpencvSharp 算子学习教案之 - Cv2.Subtract 重载1
学习·c#·opencvsharp算子·opencv教程
张人玉4 小时前
SMT 贴片机上位机项目
开发语言·c#
asdzx674 小时前
C#:从 URL 下载 PDF 文档到本地
开发语言·pdf·c#
南無忘码至尊5 小时前
Unity学习90天 - 第 5 天 - 阶段小项目
学习·unity·c#·游戏引擎
CompaqCV6 小时前
OpencvSharp 算子学习教案之 - Cv2.Multiply
学习·c#·opencvsharp算子·opencv教程
CompaqCV6 小时前
OpencvSharp 算子学习教案之 - Cv2.Subtract 重载2
学习·c#·opencvsharp算子·opencv教程
回忆2012初秋6 小时前
C# 射线算法:判断GPS点是否在车辆工作区域内
linux·算法·c#
The Shio6 小时前
上位机对接设备协议踩坑指南
网络·单片机·嵌入式硬件·物联网·c#·.net
CompaqCV6 小时前
OpencvSharp 算子学习教案之 - Cv2.Add
学习·c#·opencvsharp算子