我知道Action是一个Delegate,但我在尝试将Action分配给Delegate时收到以下编译时错误。
无法将类型“system.action”隐式转换为“adelegate”

public delegate void ADelegate();
Action act = () => Console.WriteLine ("test");
ADelegate del = act;

如何将act分配给del

最佳答案

C不支持委托类型之间的转换或转换。
尝试创建一个新的ADelegate,如下所示:

Action act = () => Console.WriteLine ("test");
ADelegate del = new ADelegate(act);

或者:
Action act = () => Console.WriteLine ("test");
ADelegate del = act.Invoke;

07-24 09:52