我知道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;