简明指南:委托

网上查了很多资料,发现讲委托的思路很乱!于是来整理一下。

1 比喻
我把委托看成是手枪上的弹匣,而需要委托的函数则是弹匣中的子弹。

要打几枪就在委托里装几发子弹,然后带上这把枪;

而不是去为每把枪装上一发子弹,然后背一大堆枪;

这里的枪就是主函数Gun();
子弹可能是Fire(),Ice(),Gold()属性
弹匣就是委托容器delegate Magazine();

2 说明
要使用委托,先要声明委托,就是起草设计图。

接着是将委托这个弹匣照着设计图生产出来。
然后就是使用了。

执行清单

1:准备工作:设计图

1.1: 声明需要 委托的函数:(子弹:火属性)

string Fire()//bullet子弹
{return “fire!”;
}

1.2: 声明一个 委托:Magazine 弹匣

delegate void Magazine();//声明一个新的委托类型

2:实际使用:生产&出厂设置

2.1: 实例化委托容器:
按照Magazine设计图,生产弹匣magazine。
并填入一发子弹Fire();

delegate void Magazine();Magazine magazine=Fire;//将Fire函数(火属性子弹)填入委托容器(弹匣)中

2.2: 将委托作为参数传给主函数:将弹匣插到枪上,完成!

void Gun(Magazine magazine)//Gun=枪,magazine=弹匣
{int result=magazine();//发射火属性子弹print(result);
}

笔记:C#_委托_delegate相关推荐

  1. OpenCV学习笔记(5)_ ellipse绘制函数浅析

    OpenCV学习笔记(5)_ ellipse绘制函数浅析 文章目录 OpenCV学习笔记(5)_ ellipse绘制函数浅析 1. ellipse第一种重载--绘制椭圆弧 1.1 函数原型 1.2 参 ...

  2. Armbian 笔记六_使用 armbian-ddbr 命令 备份/还原 eMMC 系统

    ################################################## 目录 备份还原盒子内置储存 emmc 上的系统 为什么需要备份系统? 准备工作 从系统盘启动 Ar ...

  3. Java_Web笔记汇总_火热更新中。。。

    零.历史和特点 1.历史 (1)作者:James-Gosling (2)主要发展历程 1995.5.23SUN公司 正式发布了Java语言 1996年1月 开发工具包JDK1.0 1997年2月 JD ...

  4. CSharp(C#)语言_委托和事件区别详解

    委托和事件区别详解 委托和事件的概念 委托 事件 委托和事件的作用 委托 事件 委托和事件的区别 委托和事件的详细解答请看C#系列文章 委托和事件代码实践 委托 事件 总结 委托和事件的概念 委托   ...

  5. xml笔记整理_基础概括

    为什么80%的码农都做不了架构师?>>>    1.表单提交方式     * 使用submit提交         <form>             .....   ...

  6. c#_委托事件的理解

    我找了三篇写的比较不错的博客,希望对委托和事件的理解有所帮助: 第一篇: 将方法作为方法的参数 我们先不管这个标题如何的绕口,也不管委托究竟是个什么东西,来看下面这两个最简单的方法,它们不过是在屏幕上 ...

  7. 本地笔记软件_笔记软件obsidian重大更新

    obsidian是一个笔记软件,之前写了篇obsidian的介绍 https://zhuanlan.zhihu.com/p/212204160​zhuanlan.zhihu.com 这次obsidia ...

  8. C#学习笔记--详解委托,事件与回调函数

    .Net编程中最经常用的元素,事件必然是其中之一.无论在ASP.NET还是WINFrom开发中,窗体加载(Load),绘制(Paint),初始化(Init)等等. "protected vo ...

  9. 学python需要记笔记吗_自学python需要做什么笔记

    python3.4学习笔记 3.x和2.x的区别,持续更新 python3.4学习笔记(四) 3.x和2.x的区别 在2.x中:print html,3.x中必须改成:print(html) impo ...

最新文章

  1. nvm 解决nodejs无法全局/usr/bin/node问题
  2. java并发编程详解,Java架构师成长路线
  3. 【风控场景】互利网上数字金融典型场景: 消费金融
  4. web工作流管理系统开发之十九 工作流系统的事务处理
  5. Timer定时器Demo
  6. i++ 和 ++i 效率的分析以及自定义类型的自增/自减运算符重载实例
  7. Django博客--3.创作后台开启
  8. Guns 添加功能实现_入门试炼05
  9. 域控制器服务器的管理维护,域控制器管理 向备份要安全(图)
  10. 利用LCD1602显示超声波测距
  11. 奏响春的序曲,「武汉的春天」让人泪目
  12. PAT之气死人不偿命的3n+1猜想
  13. 同为开发:有了分布式/高并发等这些Java项目经历,面大厂稳了!
  14. android自定义属性dimen,Android获取非自定义属性值
  15. 计算机组成原理第一章(跟着王道课程做的笔记)
  16. 【matlab笔记】寻找极小值
  17. 唐诗欣赏静夜思用html设计,古诗鉴赏:静夜思
  18. js 控制字符串长度 区分中英文
  19. RK3288RK3399 GMAC以太网调试
  20. 【Echarts】渐变色桑基图

热门文章

  1. 华为虚拟服务器密码忘记怎么办,登录云服务器密码忘记了怎么办
  2. Spring Boot 实践折腾记(12):支持数据缓存Cache
  3. Hadoop02---HDFS基础(HDFS原理 java客户端).md
  4. Discuz3.4 论坛创始人密码忘记重置
  5. linux aria2界面,如何使用aria2及webui
  6. 摩托罗拉ap6521恢复出厂_moto AP6521 配置命令
  7. upperbound找不到_lower_bound()函数和upper_bound()函数,以及二分查找
  8. 爱普生XP245 EPSON XP245升级固件墨盒不识别免芯片固件免费下载解决方法教程
  9. tomcat项目在Linux下生成文件路径错误问题
  10. MySQL的查询语言合集