[英]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.