C# 委托定义和多播委托到事件的区别与使用

什么是委托

委托是一种引用类型,表示对具有特定参数列表和返回类型的方法的引用。 委托对方法的引用的,委托实例调用方法。

委托的声明

使用委托可以直接使用.NetFramework已经定义的委托,也可以自定义。自定义委托是用delegate声明,编译器在使用 delegate关键字时生成的代码自动会继承MulticastDelegate 类的成员的方法调用。

使用delegate自定义的委托

示例演示了一个委托声明:

public delegate int PerformCalculation(int x, int y);
框架的委托

Action 类型,Action委托的变体可包含多达 16 个参数,它的返回类型都是void,示例演示:

public delegate void Action();
public delegate void Action<in T>(T arg);
public delegate void Action<in T1, in T2>(T1 arg1, T2 arg2);

Func 类型,Func委托是带有返回值的,示例演示:

public delegate TResult Func<out TResult>();
public delegate TResult Func<in T1, out TResult>(T1 arg);
public delegate TResult Func<in T1, in T2, out TResult>(T1 arg1, T2 arg2);

还有一种专门的委托类型 Predicate,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值