C#__委托delegate

委托存储的是函数的引用(把某个函数赋值给一个委托类型的变量,这样的话这个变量就可以当成这个函数来进行使用了)

委托类型跟整型类型、浮点型类型一样,也是一种类型,是一种存储函数引用的类型

csharp 复制代码
using System.Reflection.Metadata.Ecma335;

class Program
{


    static int Sum(int p1,int p2)
    {
        return p1 + p2; 
    }
        //乘法函数
    static void Test()
    {
        Console.WriteLine("666");
    }

    //委托不是函数,它不需要有函数体        
    delegate int MyDelegate(int p1, int p2);  //返回值跟参数列表要一致
    delegate void MyDelegate2();
    static void Main(string[] args)
    {
        //Console.WriteLine(Multiply(2.3,2));
        //Console.WriteLine(Sum(1,2));

        MyDelegate d1; //利用委托声明变量
        MyDelegate2 d2; 
        d1 = Sum; //指向一个函数引用
        d2 = Test;
        Console.WriteLine(d1(1,2));
        d2();
    }
}
相关推荐
程序喵大人3 分钟前
C++依赖关系分析:5个工具理清模块关系
开发语言·c++
水深00安东尼13 分钟前
C#猜数字小游戏
开发语言·c#
Y40900120 分钟前
【多线程】Thread 类
java·开发语言·jvm
bu_shuo24 分钟前
MATLAB图片的所有导出格式
开发语言·matlab·图片
海参崴-36 分钟前
C++ 位运算从入门到精通(全知识点+面试题+实战应用)
开发语言·c++
青岛少儿编程-王老师42 分钟前
CCF编程能力等级认证GESP—C++1级—20260314
开发语言·c++
重庆小透明1 小时前
【java基础内容】ArrayList与LinkedList的区别及ArrayList源码解析
java·开发语言·后端·面试·职场和发展
東雪木1 小时前
Java学习——重载 (Overload) 与重写 (Override) 的核心区别、底层实现规则
java·开发语言·jvm·学习·java面试
爱丽_1 小时前
JVM GC 调优:内存指标、泄漏排查与线上自救
java·开发语言·jvm