C#编程:如何理解委托-2

举报
彭世瑜 发表于 2021/08/13 23:20:05 2021/08/13
【摘要】 简单地理解委托就是用来动态代理与其签名相同的方法。 class Program { // 声明委托类型CalcCallback,原型如下: public delegate double CalcCallback(double x, double y); static void Main(string[] args) { // 下面使用3种方式初始化一个委托对象,前提 /...
简单地理解委托就是用来动态代理与其签名相同的

 

  
  1. class Program
  2. {
  3. // 声明委托类型CalcCallback,原型如下:
  4. public delegate double CalcCallback(double x, double y);
  5. static void Main(string[] args)
  6. {
  7. // 下面使用3种方式初始化一个委托对象,前提
  8. // 就是方法的签名与委托类型声明时的签名一样即可
  9. // 1、使用命名方法方式初始化一个委托对象
  10. CalcCallback add = new CalcCallback(Sum);
  11. // 2、使用拉姆达函数方式初始化一个委托对象
  12. CalcCallback sub=(x,y)=>{
  13. return x-y;
  14. };
  15. // 3、使用匿名函数方式初始化一个委托对象
  16. CalcCallback mul = delegate(double x, double y)
  17. {
  18. return x * y;
  19. };
  20. Console.WriteLine(add(1,2));
  21. Console.WriteLine(sub(2, 1));
  22. Console.WriteLine(mul(2, 2));
  23. Console.ReadKey(true);
  24. }
  25. static double Sum(double x, double y) {
  26. return x + y;
  27. }
  28. }

文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。

原文链接:pengshiyu.blog.csdn.net/article/details/72842734

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。