当前位置: 首页 > news >正文

网站开发gxjzdrj最好的网站设计公司

网站开发gxjzdrj,最好的网站设计公司,ui设计风格,外贸网站后台实现委托 委托是可以存储对方法的引用的对象。在C#中,委托允许您动态地改变类中方法的引用。 考虑咖啡售货机的示例,它配置不同口味的咖啡,例如卡布奇诺咖啡和黑咖啡。在选择所需口味的咖啡时,售货机决定混合各种成分,例如奶粉、咖啡粉、热水、卡布奇诺咖啡粉。所有的材…

在这里插入图片描述

在这里插入图片描述

实现委托

委托是可以存储对方法的引用的对象。在C#中,委托允许您动态地改变类中方法的引用。

考虑咖啡售货机的示例,它配置不同口味的咖啡,例如卡布奇诺咖啡和黑咖啡。在选择所需口味的咖啡时,售货机决定混合各种成分,例如奶粉、咖啡粉、热水、卡布奇诺咖啡粉。所有的材料都被放置在售货机内的不同容器中。当您选择喜欢的口味时,就会混合所需的材料,咖啡会从机器出来。

假设您选择了黑咖啡,咖啡机将调用方法以仅混合和倒出热水和咖啡粉。按下配置黑咖啡所需的按钮时,就会动态确定这些方法的引用。

委托是引用类型变量,它包含对方法的引用。可按需在运行时更改此引用。虽然委托在运行时可以间接调用方法,它们在C#编程中主要的用途是实现事件和回调方法。

要在应用程序中实现委托,需要声明委托、实例化委托和使用委托。


在这里插入图片描述

声明委托

委托可以引用的方法时由委托声明来决定的。委托可以引用方法,此方法的签名与委托相同。您可以使用delegate关键字声明委托。委托的签名应该与它所引用方法的签名相同。

以下代码行显示了委托声明:

	public delegate void MyDelegate ( string s );

在上述代码行中,声明的委托类型可用于引用任意带有一个字符串类型参数和不返回任何值的方法。

下面是委托声明的语法:

	delegate <return type><delegate-name><parameter list>

<print>

小问题:
您将使用下面哪个语句来声明称为NewDelegate的委托?
a. public void delegate NewDelegate( string s );
b. public void NewDelegate ( string s );
c. public delegate void NewDelegate ( string s );
d. public void delagate NewDelegate ( string s );
答案:
c. public delegate void NewDelegate ( string s );

</print>
<epub>
</epub>


在这里插入图片描述

实例化委托

创建已经创建的委托类型的委托对象。向委托对象指定所需方法的地址。这可以通过调用delegate类的构造函数并传递方法名称来实现。以下代码段显示了如何将方法地址分配给委托变量:

	public void DelegateFunction(string PassValue){//Method implementation Here}//Delegate Declarationpublic delegate void MyDelegate( string ArgValue );public void UserMethod(){//Delete InstantiationMyDelegate DelegateObject = new MyDelegate(DelegateFunction);}

在上述代码段中,DelegateFunction()方法的签名和返回类型与MyDelegate委托的委托声明匹配。MyDelegate委托可保存DelegateFunction()方法的地址。
DelegateObject是MyDelegate类型的委托对象。通过将函数名称传递给委托构造函数,DeleteFunction()方法的地址被分配给了DelegateObject对象。

<print>

小问题:
您将使用以下哪个选项通过引用DelegateFunction(string PassValue)方法实例化名为MyDelegate的委托?
a. MyDelegate obj = new MyDelegate( ) ;
obj.DelegateFunction();
b. MyDelegate obj = new MyDelegate ( DelegateFunction() );
c. MyDelegate obj = new MyDelegate( DelegateFunction );
d. MyDelegate obj = new MyDelegate( );
答案:
c. MyDelegate obj = new MyDelegate( DelegateFunction );

</print>
<epub>
</epub>


在这里插入图片描述

使用委托

如果需要,您可以通过给出委托的名称和传递参数来调用委托。使用委托类似于调用方法。

考虑一个场景,您需要将信息打印到文件和屏幕。有些需要放入文件和屏幕的公共信息。也有一些特殊的信息要放到文件和屏幕上。打印信息到文件和屏幕的方法时不同的。您可以在运行时通过传递公共信息来调用这些方法。

以下代码显示了委托的用法:

	/* This code is to print data to the output device , which is either a file or a screen */using System;using System.IO;/* Program to write the data to the console and file */namespace delegates_Ex1{public class PrintToDevice{
http://www.yidumall.com/news/104117.html

相关文章:

  • 2017网站发展趋势2022当下社会热点话题
  • WordPress自动发英文文章成都市seo网站公司
  • 网加商学院网站怎么做seo如何快速排名
  • nginx 网站开发成都正规搜索引擎优化
  • 昆山做网站的公司磁力链bt磁力天堂
  • 网站做代理还可以刷水吗百度关键词搜索趋势
  • 做微商卖产品在哪个网站销量能好点优化关键词首页排行榜
  • 力杨网站建设网站域名综合查询
  • 华为快速建站响应式网站建设
  • 无限制免费网站空间网页平台做个业务推广
  • 自助建站网信息发布平台seo搜索引擎优化实训总结
  • 网站服务器 免费怎么制作一个简单的网页
  • 河南做外贸网站的公司简介郑州seo顾问外包
  • 三门峡网站建设电话北京网站优化步骤
  • 游戏小程序开发定制优化方案官网电子版
  • 网创seo课程培训班费用
  • 嘉兴学网站建设外贸公司一般怎么找客户
  • 国外哪个网站专做展厅网络营销整合推广
  • 上海微网站公司电商运营方案
  • 自己做购物网站怎么做百度推广客户端电脑版
  • 怎么做企业曝光引流网站沈阳网络关键词排名
  • 中国人在俄罗斯做网站需要多少卢布谷歌手机版下载安装
  • 做类似知乎网站seo整站优化什么价格
  • 公司网站首页怎么设置武汉百度信息流广告
  • 做网站用什么浏览器最好无锡做网站的公司
  • 征婚网站上教人做恒指期货北大青鸟职业技术学院简介
  • 营销型网站建设便宜子域名大全查询
  • 海宁网站怎么做seo镇江百度关键词优化
  • 网站树状栏目有点近期重大新闻事件
  • 制作芝士需要哪些设备博客可以做seo吗