现在的位置: 首页 > 综合 > 正文

关于委托的基础知识

2012年03月11日 ⁄ 综合 ⁄ 共 489字 ⁄ 字号 评论关闭
Delegate
1、想象成C++中的函数指针,不同点在于Delegate完全面向对象,既封装了方法又封装了对象。
可以看成是方法的接口
2、定义委托其实是定义一个类型的委托,而不是一个具体的实例。
3、委托类型指定他方法的返回类型和参数表
4、它代表具有相同参数列表和返回类型的任何方法。
5、委托的声明:
访问修饰符 delegate 返回值类型 委托名(参数表)
6、创建实例     MyDelegate md=new MyDelegate(MyObject.MyMethod)
                                 此方法必须和代理时声明的返回类型和参数列表相同
7、调用
public delegate int MyDelegate(int i)
public class UseDelegate
{
    public int CallDelegate(int i,MyDelegate md)
        {
            return md(i);
        }
}
8、把委托的单个实例合并成一个多播委托,委托必须是同类型的,返回类型必须是void,不能带输出参数,可以带引用参数。

抱歉!评论已关闭.