美文网首页
delegate的使用

delegate的使用

作者: bravelion | 来源:发表于2019-09-29 23:02 被阅读0次

    1.使用

    delegate可以理解为对方法的引用,前提是delegate和方法的方法签名一样。例子如下:

    通过以上例子可以发现,代理可以让方法作为其他方法的参数调用。需要注意的是,被调用的方法需要和代理的方法签名一样。更多可以见官方文档:https://docs.microsoft.com/zh-cn/previous-versions/ms173171%28v%3dvs.120%29

    2.其他

    如果一个代理中,参数并不需要用到时,使用delegate省略掉参数的编写。如下:

    Task dating = new Task(delegate { 

    Console.WriteLine("新建Task,去和美女约会了!"); 

    });

    3.组播

    可以使用+=来连接一系列的方法构成方法链,也叫做''多播"或者"组播"。

    比如早上起床后,要刷牙,要洗脸可以这样子定义

    delegate void GetUp(String str);

    public  static void BrushTooth(String desc)

    {

        Console.WriteLine("早晨起来,刷刷牙,身体好");

    }

    public static  void WashFace(String desc)

    {

        Console.WriteLine("刷完牙后,洗洗脸,精神棒!");

    }

    //测试代码 

    GetUp p = new GetUp(BrushTooth);

    p += WashFace;

    相关文章

      网友评论

          本文标题:delegate的使用

          本文链接:https://www.haomeiwen.com/subject/ysgqpctx.html