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();
    }
}
相关推荐
chushiyunen13 分钟前
python实现skip-gram(跳词)示例
开发语言·python
CSharp精选营18 分钟前
.NET 8 性能优化实战:让你的应用起飞
性能优化·c#·.net·技术干货
笨笨饿35 分钟前
26_为什么工程上必须使用拉普拉斯变换
c语言·开发语言·人工智能·嵌入式硬件·机器学习·编辑器·概率论
酉鬼女又兒44 分钟前
零基础快速入门前端ES6 核心特性详解:Set 数据结构与对象增强写法(可用于备赛蓝桥杯Web应用开发)
开发语言·前端·javascript·职场和发展·蓝桥杯·es6
人大博士的交易之路1 小时前
数据结构算法——python数据结构
开发语言·数据结构·python
Han_han9191 小时前
面向对象高级 继承(extends):
开发语言·python
前端老石人1 小时前
邂逅前端开发:从基础到实践的全景指南
开发语言·前端·html
白毛大侠2 小时前
Go Goroutine 与用户态是进程级
开发语言·后端·golang
ForteScarlet2 小时前
从 Kotlin 编译器 API 的变化开始: 2.3.20
android·开发语言·后端·ios·开源·kotlin