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();
    }
}
相关推荐
娇娇yyyyyy9 小时前
QT编程(17): Qt 实现自定义列表模型
开发语言·qt
唐青枫9 小时前
C#.NET SpinLock 深入解析:自旋锁原理、使用边界与性能取舍
c#·.net
ms_27_data_develop9 小时前
Java枚举类、异常、常用类
java·开发语言
add45a10 小时前
C++编译期数据结构
开发语言·c++·算法
岁岁种桃花儿10 小时前
AI超级智能开发系列从入门到上天第四篇:AI应用方案设计
java·服务器·开发语言
Amnesia0_010 小时前
C++中的IO流
开发语言·c++
2401_8914821710 小时前
C++模块化编程指南
开发语言·c++·算法
暮冬-  Gentle°10 小时前
自定义类型转换机制
开发语言·c++·算法
2301_8166512210 小时前
嵌入式C++低功耗设计
开发语言·c++·算法
czlczl2002092511 小时前
JVM创建对象过程
java·开发语言