Delegate

时间:2022-07-26
本文章向大家介绍Delegate,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
public delegate void EventHandler(object sender, EventArgs e);
pulic EventHandler HandleMapMessage;
HandleMapMessage = MapControl;

public void MapControl(obeject sender,EventArgs e)
{
....
}

C#里的Delegate据说相当于C++函数指针。如上例首先,用语法delegate 定义个一个delegate(和函数签名完全一样,只是多了个关键字delegate),相当于自定义了一个类型。然后可以声明一个自定义委托的一个实例(有点类实例化对象的意思),如代码里的public EventHandler HandelMapMessage; 最后再定义一个具体实现功能的函数,返回类型,参数个数,参数顺序和类型必须完全和自定义的委托匹配,估计这样可以唯一标识。然后赋值一下:HandleMapMessage = MapControl(估计这样它们就指向同一块内存地址了)