繁体   English   中英

C#传递委托与传递方法

[英]C# pass in delegate vs pass in method

如果我有一个将委托作为参数的方法,则在传递委托(指向方法)和传递方法名称之间有区别吗? 如果是这样,每种方法的优点/缺点是什么?

delegate void MyDel();
static void MyFunc(MyDel)
{
MyDel();
}
static void SomeFunc(){//do stuff}
static void Main()
{
MyDel del= new MyDel(SomeFunc);

//What's the difference between the approaches below?
del();
MyFunc(SomeFunc);
}

委托用于调用方法线程安全。 它们是类型安全的。 直接传递方法意味着,如果您更改例如Form.Control,可能会导致应用程序崩溃。 因此,您需要一名代表

好吧,我把它拿回来:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM