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();
    }
}
相关推荐
phltxy12 小时前
深度解析:Spring Cloud Gateway 从入门到实战
java·开发语言
AI进化营-智能译站12 小时前
ROS2 C++开发系列08-传感器数据缓存与指令解析方式之数组、向量与字符串实战
开发语言·c++·缓存·ai
shjita12 小时前
记录java执行中的一个错误细节
java·开发语言
AI进化营-智能译站12 小时前
ROS2 C++开发系列14-Lambda表达式处理传感器数据流|文件IO保存机器人实验日志
开发语言·c++·ai·机器人
itzixiao13 小时前
L1-067 洛希极限(10分)[java][python]
java·开发语言·算法
l1t13 小时前
DeepSeek总结的DuckDB anofox-forecast季节调整时间序列预测插件功能
开发语言·数据库
xyq202413 小时前
SVG 阴影
开发语言
好奇龙猫13 小时前
[大学院ーpython-base learning3: python and recommendation system ]
开发语言·python
澈20713 小时前
C++引用与指针:核心区别全解析
开发语言·数据结构·c++
沐知全栈开发13 小时前
Scala Iterator(迭代器)
开发语言