这个c#语法是什么意思?

tro*_*Man 3 c# syntax delegates

嗨,我对理解这种语法有一点问题

public delegate void DelegateType();
BeginInvoke(new DelegateType(functionName));
Run Code Online (Sandbox Code Playgroud)

有人可以告诉我新的DelegateType(functionName)是什么意思.为什么我必须使用新关键字?

SLa*_*aks 6

请参阅文档.

委托是一种包含方法的类型.
您正在创建一个委托类型的实例,指向现有方法.

C#2添加了从方法组到任何匹配的委托类型的隐式转换.
但是,由于BeginInvoke不采用特定的委托类型(例如System.Action),因此您始终需要显式创建委托实例.