当我们声明了一个如下的委托
public delegate string StringOperation(string myString);
编译器会产生如下代码:
public sealed class StringOperation: System.MulticastDelegate { public StringOperation (object target, int method); public virtual void Invoke(string myString); public virtual IAsyncResult BeginInvoke(string myString, AsyncCallback callback, object obj); public virtual void EndInvoke(IAsyncResult result); }
你可以看到 .ctor:
void (Object ,native int)
(这是一个构造函数,类似与System.MulticastDelege
构造函数)。Invoke函数必须同引用方法有相同的签名。
委托背后那点事
最新推荐文章于 2024-06-26 18:33:25 发布