你好
我对理解这种语法有一点问题
public delegate void DelegateType();
BeginInvoke(new DelegateType(functionName));
有人可以告诉我新的DelegateType(functionName)到底是什么意思。为什么我必须使用新关键字?
最佳答案
请参见documentation。
委托是一种持有方法的类型。
您正在创建一个委托类型的新实例,指向一个现有方法。
C#2将隐式转换从方法组添加到任何匹配的委托类型。
但是,由于BeginInvoke
不采用特定的委托类型(例如System.Action
),因此始终需要显式创建委托实例。