委托怎么用

1.C#中委托如何使用

1.委托概述委托是C#中新加入的一个类型,可以把它想作一个和Class类似的一种类型,和使用类相似,使用一个委托时,需要两个步骤,首先你要定义一个委托,就像是定义一个类一样;然后,你可以创建一个或多个该委托的实例。

定义一个委托的语法是这样的:[public/protected/private] delegate returnType delegateName(paramtype param1,…)这是我自己写的,看起来好像有点怪怪的,我来解释一下,private/protected/private是限定词,就不多说了,delegate是申明一个委托的关键词,returnType是一个返回类型,delegateName是一个你给委托起的名字,你可以写任何一个你喜欢的名字,paramtype param1…这个是参数列表。说了这么多可能看起来还是不是很好理解,我是这样认为的,实用点来讲,委托定义就是在一个函数定义中间加入一个delegate的关键词。

它的作用类似于你申明一个类:public class ClassName {…}创建一个委托的实例:[public/protected/private] delegateName deleInstanceName = new delegateName(MethodName)这个类似于实例化一个类,public ClassName instancename = new ClassName(…),这里有个要注意的地方,即MethodName方法要和delegateName的签名一致。什么是签名一致,就是说MethodName的参数列表,返回值要分别和returnType、(paramtype param1,…)一致。

举个例子来说明下:public delegate string DelegateDemo(string name, int age);比如我们如上定义了一个委托,就写法来说,其实就是在函数 string DelegateDemo(string name, int age)前面加了一个delegate的关键字,下面我们来用创建一个函数:public string AgentDemo(string name, int age){string rev = “”;… return rev;}这个函数是做参数传递给一个DelegateDemo实例的,接下来创建一个DelegateDemo的实例:DelegateName instanceDemo = new DelegateName(AgentDemo);这时要说到一致了,即AgentDemo和声明委托时的DelegateDemo(我们姑且将delegate去掉)这两个函数的返回值,参数列表要相同。终于说完了,不知道看的人明不明白。

接下来,我们可以使用这个委托了(调用一个委托),如下:string name = “cshape”;int age = 20;instanceDemo(name, age);当instanceDemo执行时,会执行AgentDemo函数,instanceDemo相当于C里的一个函数指针,现在这个指针指向AgentDemo的函数入口地址。2.多点委托前面提到的委托都只包含对一个方法的调用,如果需要调用多个方法,需要多次显示的调用这个委托,我们还有另的选择,我们可以让一个委托中包含多个方法,这样我们一次显示调用委托,就可以按照顺序连续的调用多个方法。

看下面的例子:public delegate void MultiDelegate(string name);public void AgentDemo1(string str){ Console.WriteLine(str + “this is AgentDemo1\n”);}public void AgentDemo2(string s){ Console.WriteLine(s + “this is AgentDemo2\n”);}MultiDelegate multiDemo = new MultiDelegate(AgentDemo1);multiDemo += new MultiDelegate(AgentDemo2);multiDemo(“multiDemo test :”);输出的结果应该是:multiDemo test :this is AgentDemo1mutliDemo test :this is AgentDemo2可以看到我们一次显示的调用一个委托,它顺序的(按照你添加方法的顺序)执行了方法AgentDemo1和AgentDemo2。这里要注意的有几点:● 委托支持 +=,-=这样的运算符,对应为添加或去掉一个方法● 多点委托不可以定义有返回值,因为无法处理多个方法的返回值,所以如果要使用多点委托,应该用void,否则你的编译会返回一个错误● 多点委托不建议你的参数列表中有OUT的类型,这样只会out最后一个方法的值,其他的值会丢失。

3.委托的理解首先申明,这只是我举的一个例子,目的是帮助理解委托的过程,其中很多地方都经不起推敲,望大家知悉。言归正传,你想要吃饭,但是自己又不会做(委托方不知道实现细节),你计划找个饭店,叫个回锅肉饭(定义了一个委托)你决定找常去的那家叫做A的饭店(实例化一个委托)你打电话给A饭店(委托调用)A饭店给你做好了你的回锅肉饭(代理函数工作)饭来了,真好。

4.委托的使用时机当你需要把一个方法传送给其他方法时,可以考虑使用委托。好像不是很好理解,也可以这样说,当你确定要处理一件事,但又不能确定处理方法时,可以考虑用委托。

其实单独的说委托的应用好像有点牵强,委托更多的是在事件中的应用。5.一个委托的例子我用两个类来做这个例子,一个类,我称它为委托方,一个类我称它为代理方,代码如下:using System;namespace Visen.Demo.Delegate{ ///

/// StartUp 委托演示中的程序入口,含委托方。

///

class StartUp { #region公用的方法 #region应用程序的主入口点。 /// ///应用程序的主入口点。

///

[STAThread] static void Main(string[] args) { Console.WriteLine("This is a delegate demo\n"); Visen.Demo.Delegate.Agent ag = new Agent(); //定义一个委托类型的对象 OutMessage singleDele = new OutMessage(ag.ShowMessage)。

2.c# 委托是怎么回事

49、委托和函数指针类似,如果以前学过C或C++语言里的函数指针,理解委托比较简单,请填空。

C#中委托的具体的步骤是: (1) __一个委托,其参数形式一定要和想要包含的方法的___一致。这相当于声明函数指针类型 (2) 定义所有你要定义的方法,其____和第一步中声明的委托对象的____必须相同。

这相当于创建很多有子功能的函数。 (3) 创建委托对象并将所希望的方法__在该委托对象中。

这相当于函数指针实例用具体的函数名初始化。 (4) 通过委托对象__包含在其中的各个方法。

这相当于通过函数指针调用函数。从函数指针理解,就容易理解委托的引用特点和中间特点,委托的引用是指它能代表一个方兴,中间的意思是指它是调用目标函数的一个桥梁。

C#开源项目专家QQ396806338。

转载请注明出处育才学习网 » 委托怎么用

知识

魔兽世界雕文怎么用

阅读(403)

本文主要为您介绍魔兽世界雕文怎么用,内容包括魔兽世界雕文怎么用是永久使用的吗那可真BT了,魔兽世界WOW雕文怎么用,WOW雕文是什么,有什么用,怎么弄。雕文,也称铭文,拥有专业技能“铭文”的玩家可以制作雕文。在人物天赋栏下有一个选项是雕文

知识

留白液怎么用

阅读(564)

本文主要为您介绍留白液怎么用,内容包括留白液怎么用,水彩留白液在纸上怎么去除,如何使用留白液。留白液,学名水彩留白胶,在使用的时候有一点需要注意,如果用画笔沾留白液,一定手边放一个清水桶,画几笔涮一下笔,否则留白液很快就会凝固,笔

知识

甲烷变成液态需要几度多大压力

阅读(271)

将压力增加到四点五九兆帕,温度降到负八十二点六摄氏度,甲烷可液化。甲烷是无色、无味的气体,溶解性,微溶于水,溶于醇、乙醚。沸点为负一百六十一点五摄氏度,熔点负一百八十二点四八摄氏度。常压下温度降到负一百六十一点五摄氏度以下,甲烷也可

知识

计划和规划有什么不同谢

阅读(230)

1.计划和规划的不同之处在于,计划具有提前性,而规划具有长远性、全局性、战略性、方向性、概括性和鼓动性。2.计划是指工作或行动以前,预先拟定的具体内容和步骤,例如工作计划、训练计划、科研计划、五年计划等。3.规划是指比较全面的长远的

知识

有没有手机软件是可以把视频慢放快发倒放的

阅读(237)

以下几种软件:1.小影。它是由杭州趣维科技有限公司在2013年初推出的一款手机视频软件,小影首创在移动端实现多镜头拍摄,即拍即停,配上各种美轮美奂的实时滤镜。2.乐秀视频编辑器。它是一款安卓系统平台的应用。视频剪辑、视频制作、视频美

知识

沈阳市办理关爱卡地点在哪里

阅读(254)

沈阳市办理关爱卡地点如下:1.小北IC卡业务受理中心:沈阳市大东区白塔路25号(乘116、131路到小北门;290、292路到小北街)。2.砂阳IC卡业务受理中心:沈阳市和平区砂山街86号(乘166、231、296路到砂阳路砂阳街)。3.兴华北街IC卡业务受理中心:沈阳市

知识

滤纸怎么用

阅读(217)

本文主要为您介绍滤纸怎么用,内容包括滤纸的使用方法,滤纸的使用,滤纸使用方法。如下步骤:1.将过滤纸对折,连续两次,叠成90°圆心角形状。2.把叠好的滤纸,按一侧三层,另一侧一层打开,成漏斗状。3.把漏斗状滤纸装入

知识

怎样做糖焗深薯好吃

阅读(210)

材料:深薯若干只,糖适量,陈皮少量,花生油少量。步骤如下:1.把深薯洗净,用刀削皮;2.把削净皮的深薯洗净;3.把深薯切片,再清洗一遍;4.倒一些花生油在高压锅底下,摇匀锅底,防止烧焦;5.把深薯片放进去,再撒一些陈皮,然后均匀地把糖铺在上面;6.中火烧开,响气

知识

没有姜改该怎么煮鱼呢,才不会有腥味

阅读(219)

1.煮之前用葱花,料酒,盐腌制。2.煮之前用油把鱼两面煎至金黄色。3.煮鱼时,用啤酒代替水,一条鱼需要半瓶酒。4.煮鱼过程中,加入少量白酒,然后再加入少量醋,即可去腥。5.干辣椒也可以代替姜片,作用效果相同,但会产生辣味,不适合不能吃辣的人。6.将鱼

知识

苹果手机不越狱怎么设置其它动态壁纸

阅读(214)

苹果手机设置其它动态壁纸方法:1.打开手机中的“设置”,找到“墙纸和亮度”;2.点击“选取墙纸”,选取图片;3.选择图片时,可以选择手机本地壁纸,或者是手机相册中的壁纸;4.手机内置了七款动态壁纸,可以选择喜欢的动态壁纸;5.选取后,会在底部弹出“设

知识

蜡嘴鸟分那些品种

阅读(336)

蜡嘴鸟品种分为黑尾蜡嘴鸟和黑头蜡嘴鸟。黑尾蜡嘴雀体形中等大小,体长约在19厘米左右。本物种雄雌异形异色,雄性头部、颊部、颌部、头顶均为饱满的黑色。喙具有典型的雀科鸟类特征,非常适合咬碎果壳取食种子,与其他鸟类一样,在繁殖季节也会取

知识

因利乘便的乘什么意思

阅读(212)

1.“因利乘便”的“乘”是“乘机”、“趁势”的意思。2.解释:因:顺着。凭藉有利的形势,常作谓语用,指利用有利条件。3.出自:汉贾谊《过秦论》:“因利乘便,宰割天下,分裂河山。”4.例句:古话说,“因利乘便”,确实是不应该坐失良机。

知识

pdf软件怎么用

阅读(229)

本文主要为您介绍pdf软件怎么用,内容包括如何使用pdf格式的软件,PDF软件是如何使用的,什么是PDF格式是用什么软件做成的文件。首先在点击打开电脑中安装的PDF程序。

知识

月和人能组什么成语

阅读(241)

月下老人。解释:原指主管婚姻的神仙,后泛指媒人,简称“月老”。出处:唐·李复言《续幽怪录》记载传说故事:唐朝的韦固路过宋城,遇一老人在月光下翻检一本书,询问后,知道老人是专管人间婚姻的神,翻检的书是婚姻簿子。近义词:天配良缘、媒妁之言。例

知识

委托代销商品的受托方收到手续费计入哪个科目

阅读(235)

委托代销商品支付的手续费计入“销售费用”科目。账务处理为:1.发出商品时,借:委托代销商品,贷:库存商品;2.收到代销清单,确认收入借:应收账款,贷:主营业务收入应交税费,应交增值税(销项税额);3.结转已销商品成本借:主营业务成本,贷:委托代销商品;4.计算并

知识

实验委托单委托单位填写施工单位还是建设单位依据是什么

阅读(368)

1.哪一方送样检测即施工单位、监理单位、建设单位和监督单位就填哪一方的单位名称。2.见证取样的委托书中委托单位一般情况是填写施工单位。3.委托单中,一般有业主的名称,有项目名称。业主与施工单位有正式的施工合同,具体的施工试验委托由

知识

委托收款怎么收款

阅读(198)

委托收款步骤如下:1.收款人填写邮划委托收款凭证或电划委托收款凭证并签章;2.将委托收款凭证和有关的债务证明一起提交银行;2.审查委托收款凭证和有关的债务证明是否符合有关规定;3.将委托收款凭证和有关的债务证明寄交付款人开户行办理

知识

可以委托成为辩护人的范围是什么

阅读(192)

1.辩护人是指接受被追诉一方委托或者受人民法院指定,帮助犯罪嫌疑人、被告人行使辩护权以维护其合法权益的人。辩护人既可以是律师,也可以是人民团体或者犯罪嫌疑人、被告人所在单位推荐的,还可以是犯罪嫌疑人、被告人的监护人、亲友。但指

知识

单位委托个人收款

阅读(351)

如果是单位委托个人,需要出示对方委托授权书,一般打款单位都需要跟委托单位确认,无误后在打,或者是签订三方委托协议,三方承认即可。委托收款,是指收款人委托银行向付款人收取款项的结算方式。委托收款分邮寄和电报划回两种,由收款人选用。前者

知识

委托他人代开增值税专用发票合法吗

阅读(185)

增值税纳税人申请代开专用发票时,应填写《代开增值税专用发票缴纳税款申报单》,连同税务登记证副本,到主管税务机关税款征收岗位按专用发票上注明的税额全额申报缴纳税款,同时缴纳专用发票工本费。增值税纳税人缴纳税款后,凭《申报单》和税收

知识

行政事业单位会计科目中“委托业务费”包括哪些

阅读(1179)

委托业务费是指为实现工作项目目标,工作项目承担单位将难以承担的辅助性专业技术业务或研究内容,委托外单位承担的费用。根据《政府收支分类科目》中的《支出经济分类科目》对“委托业务费”的说明:“反映因委托外单位办理业务而支付的委托

知识

C#委托的理解

阅读(176)

委托类似于C语言中的函数指针,可以指向一个签名与函数指针所指定的签名相同的函数,但委托的不同之处在于委托仅仅是一个类,换句话说当需要实际使用委托进行操作时只能对它的对象进行操作;并且委托不只是可以指向单个方法,多个签名相同的方法

[/e:loop]