-
C#委托
1、首先委托,就是和现实生活中的委托别人办事一样!
例如A要做买苹果,但是A不想自己去买,就叫B去买,
这个B就是委托(这里好像骂街了!别在意),B去买之前就肯定要就要知道A要买什么样的苹果,买多少之类的信息。
A就说:“我一个一个和你说太麻烦了,你拿这个清单去照着买就行了”,然后B就拿这清单去了水果店。
B跟水果店老板说:“啥也别问,照着清单上做进行,不要在这跟我逼逼赖赖的”
水果店老板也就只有照着清单上写的做了。(这里的水果店老板就是执行者,执行了苹果这事)
这一套流程下来就是委托,而且是无返回的类型,水果店把苹果B,B把苹果交给交给A后,这就是有反回的类型
2、代码
static FileStream fs; static StreamWriter sw; // 委托声明 public delegate void printString(string s);//我是委托清单字符串的委托都可以写 // 该方法打印到控制台 public static void WriteToScreen(string str)//我是执行者1 { Console.WriteLine("The String is: {0}", str); } // 该方法打印到文件 public static void WriteToFile(string s)//我是执行者2 { fs = new FileStream(@"C:\message.txt", FileMode.Append, FileAccess.Write); sw = new StreamWriter(fs); sw.WriteLine(s); sw.Flush(); sw.Close(); fs.Close(); } // 该方法把委托作为参数,并使用它调用方法 public static void sendString(printString ps)//PS是委托清单 { //我是委托人 //我按照清单委托printString去帮我做这件事 ps("Hello World"); } static void Main(string[] args) { printString ps1 = new printString(WriteToScreen);//生成委托清单 printString ps2 = new printString(WriteToFile);//生成委托清单 sendString(ps1);//把清单交给委托人 sendString(ps2); Console.ReadKey(); }
大致就是这样,有不同意见的或者有更好的,希望在评论区留言!!!
纯属自作,如有雷同,纯属巧合,禁止用作商业用途
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式