当前位置:首页 > 代码相关 > 正文内容

C# 委托

admin1年前 (2020-03-27)代码相关262

Action和Func是.NET类库的内置委托,以简便使用。

image.png

image.png

Func有17个重载

image.png

还可以使用delegate关键字创建委托


下面的代码展示了这三种使用委托的方法

namespace _20200327
{
    public delegate int Delga(int a, int b);
    class Program
    {
        static void Main(string[] args)
        {
            Calculate cal = new Calculate();
            Action action = new Action(cal.Report);
            action();

            Func<int, int, int> funcAdd = new Func<int, int, int>(cal.Add);
            int a = 100;
            int b = 200;
            int c = 0;
            c = funcAdd(a, b);
            Console.WriteLine(c);

            Delga delgaSub = new Delga(cal.Sub);
            c = delgaSub(a, b);
            Console.WriteLine(c);


            Console.ReadKey();
        }
    }

    class Calculate
    {
        public void Report()
        {
            Console.WriteLine("3个方法");
        }
        public int Add(int a, int b)
        {
            return a + b;
        }
        public int Sub(int a,int b)
        {
            return a - b;
        }
    }
}


版权声明:本文由cyhu's essay发布,如需转载请注明出处。

本文链接:https://lovedm.club/?id=23

相关文章

C语言 异或运算符 ^

C语言中异或运算符^表示参见运算的二进制运算符相同为0,不同为1,如下:1 ^ 1 = 01 ^ 0 = 10 ^ 1 = 10 ^ 0 = 0下面举例说明∧运算符的应用:  (1)使特定位翻转  假...

递归计算1到x的和

递归真是个神奇的东西,当时学C的时候就没搞明白,学C#又遇到例子了。        public int&nb...

C# 通过事件传递参数

C# 通过事件传递参数

20200622气死我了,一开始写的很详细,提交的时候因为长时间未操作提交失败了,今天懒得再写了,只把代码贴出来算了。事件发布相关类:public class ProEventAr...

PIE二次开发 加载栅格数据

1、获得栅格数据集路径2、打开栅格数据集3、创建栅格图层4、将数据添加到图层并刷新要添加两个引用:using PIE.DataSource;using PIE.Carto;// 获得要打开栅...

C#事件_Sample_1

事件模型的五个组成部分:1、事件的拥有者(event source,只能是对象或类)2、事件成员(event,成员)3、事件的响应者(event subscriber,对象)4、事...

九九乘法表算法

九九乘法表算法

namespace _20200324 {     class Program     {...