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();
    }
}
相关推荐
ylscode6 分钟前
黑客利用 GHOSTYNETWORKS 和 OMEGATECH 托管 JS 恶意软件基础设施
开发语言·安全·php·安全威胁分析
爱吃生蚝的于勒7 分钟前
QT开发第二章——信号和槽
c语言·开发语言·c++·qt
xcLeigh12 分钟前
Python入门:Python3 operator模块全面学习教程
开发语言·python·学习·教程·python3·operator
大叔带刺13 分钟前
使用python创建自己的专属星座签名APP:Name2Constell
开发语言·python·pygame
z落落16 分钟前
C# 类与对象、字段、静态与非静态+四大访问修饰符
开发语言·c#
思麟呀19 分钟前
C++工业级日志项目(八)最终上层接口
开发语言·c++
魔法阵维护师22 分钟前
从零开发游戏需要学习的c#模块,第三十二章(Boss 战系统)
学习·游戏·c#
石山代码25 分钟前
如何在 C++ 中实现多态?
开发语言·c++
阿方.91826 分钟前
C++ std::function 超全精讲 | 原理语法、适配对象、递归实现、回调场景、面试考点、易错坑点
开发语言·c++·bind·function
weixin_4684668530 分钟前
Markitdown 文档解析快速入门指南
开发语言·python·自动化·编程