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();
    }
}
相关推荐
小满zs13 小时前
Next.js第二十五章(CSS方案)
开发语言·javascript·css
wuhen_n13 小时前
JavaScript事件循环(下) - requestAnimationFrame与Web Workers
开发语言·前端·javascript
Vallelonga13 小时前
Rust Option.as_ref() 方法
开发语言·rust
MarkHD13 小时前
Python RPA入门实战:深入解析RPA核心概念与Python的优势(第5-6天)
开发语言·python·rpa
Konata1213 小时前
实现进阶的C/S通信
java·开发语言
初听于你13 小时前
Java 泛型详解
java·开发语言·windows·java-ee
rainbow688913 小时前
Java17新特性深度解析
java·开发语言·python
bin915313 小时前
C盘瘦身大作战:程序员的存储空间优化全攻略
c语言·开发语言·c盘清理·c盘清理技巧分享
小秋学嵌入式-不读研版13 小时前
智能台灯功能重设计方案
开发语言
Z.风止13 小时前
Go-learning(1)
开发语言·笔记·后端·golang