zoukankan
html css js c++ java
委托学习笔记二(多播委托)
多播委托是指引用多个方法委托。当调用委托时,它连续调用每个方法。为了把委托的单个实例合并为一个多播委托,委托必须是同类型的,返回类型必须是void,不能带输出参数(但可以带引用参数)。
除此之外,它们的声明和实例化都和其他委托没有什么不同。多播委托用于C#的事件模型中。
您可以把多播委托看作两个或多个标准委托串在一起。委托可以使用算术运算符+和+=串在一起。委托也能使用-和-=运算符从多播委托中删除。当调用多播委托里,委托所表示的每个方法依次调用。如果有任何参数,它们将用于所有的方法。
多播委托例子代码:
public
delegate
void
Message();
class
Class1
{
/**/
///
<summary>
///
应用程序的主入口点。
///
</summary>
[STAThread]
static
void
Main(
string
[] args)
{
//
//
TODO: 在此处添加代码以启动应用程序
//
Message msg;
//
创建一个多播委托
msg
=
new
Message(Messages.Greeting);
msg
+=
new
Message(Messages.DateAndTime);
Message msg2
=
new
Message(Messages.Maintenance);
msg
+=
msg2;
msg();
Console.ReadLine();
}
}
public
class
Messages
{
public
static
void
Greeting()
{
Console.WriteLine(
"
Welcome to Mandolin Co.
"
);
return
;
}
public
static
void
DateAndTime()
{
Console.WriteLine(DateTime.Now.ToLongDateString());
return
;
}
public
static
void
Maintenance()
{
Console.WriteLine(
"
System maintenance be done tonight
"
);
return
;
}
}
查看全文
相关阅读:
使用EF批量新增数据十分缓慢
EF中获取当前上下文的表名
下拉框停用数据的处理
CEILING保留n位小数向上取整
MVC ValidationAttribute 验证一个字段必须大于另一个字段
EF通过导航属性取出从表的集合后,无法删除子表
我得新博客上线了采用Vue+Layui的结合开发,后台采用asp.net mvc
CTS,CLS,CLR解释
Linq与委托
C#4.0的十种语法糖
原文地址:https://www.cnblogs.com/wuhuihui_dotnet/p/297018.html
最新文章
深入浅出之委托
.Net 特性分析与妙用
树状解析之深度优先算法(一)
.net Core 使用IHttpClientFactory请求
2019念念不忘,2020必有回响!!!
webapp开发之IIS进程调试
.Net Core组件化视图(部分视图)
【工利其器】必会工具之(九)Android Lint篇——为Android量身定做的代码审查利器
【工利其器】必会工具之(八)PMD篇——代码分析工具基本使用
【工利其器】必会工具之(七)CheckStyle篇——定制属于你的Java编码规范
热门文章
【工利其器】必会工具之(六)Alibaba Java Coding Guidelines篇——以后的Java代码规范,就靠它了
【工利其器】必会工具之(五)FindBugs篇——让工具找出你代码中的bug
【工利其器】必会工具之(四)Refactor篇——Android Studio在代码重构中的妙用
【朝花夕拾】Messenger篇——Messenger使用与源码分析
[算法]还在用递归实现斐波那契数列,面试官一定会鄙视你到死
Retrofit-草稿
内存泄漏-草稿
Postgre 查找某个表被哪些表所引用
EF导航属性会自动从已查出来的对象附加
ABP中文网的一些BUG
Copyright © 2011-2022 走看看