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();
    }
}
相关推荐
阿正的梦工坊10 分钟前
【Rust】08-集合类型、字符串与迭代器入门
开发语言·rust·c#
FuckPatience15 分钟前
C# 使用泛型协变将派生类类型替换为基类类型
开发语言·c#
张忠琳19 分钟前
【Go 1.26.4】(Part 1) Go 1.26.4 超深度源码分析 — 总体架构与模块全景
开发语言·golang
guygg8822 分钟前
C# 生成中间带 Logo 头像的二维码
开发语言·c#
闪电悠米25 分钟前
黑马点评-Redis 消息队列-03_stream_consumer_group
开发语言·数据库·redis·分布式·缓存·junit·lua
81250353339 分钟前
第 9 篇:子网掩码:如何划分“小区”
开发语言·php
Jun6261 小时前
QT(12)-制作lib库
开发语言·qt
Java面试题总结1 小时前
C#12 中的 Using Alias
开发语言·windows·c#
加号31 小时前
【C#】 ASCII 码转字符串技术解析
开发语言·c#
Cloud_Shy6182 小时前
解读《Effective Python 3rd Edition》:从练气到老魔(第五章 Item 33 - 35)
开发语言·人工智能·笔记·python·学习方法