zoukankan      html  css  js  c++  java
  • 委托

    什么是委托?

    安全的函数指针

    就是一个能存放符合某种格式(方法签名)的方法的指针的清单

    委托创建方法

    1.  准备一个方法: string HelloU (string name) {   }

    2.声明委托:delegate 返回值类型 委托类型名(参数)

                           例子:delegate string DGSayHi  ( string Name );

    3.创建委托对象 :DGSayHi dgSay=new  DGSayHi ( HelloU );

    或者:  DGSayHi dgSay = HelloU;

    4.追加方法: dgSay+=HelloU2;

    5.删除方法:dsSay-=HelloU3;

    委托调用方式

     dgSay (" binggo"); // 

    dgSay.Invoke("binggo");

    我们创建了一个方法,内存为这个方法开辟一个空间,  分配给该空间一个编号地址,有个指针指向这个地址,根据这个指针找到内存中的地址,因为委托签名要一致才能调用,从安全角度出发,委托是安全的.

    C语言 的指针是不安全的,可以随便生成的 ,一不小心就指向其他系统文件地址

    事件

    事件是委托的一个特殊实例,私有的委托,,比委托安全,委托说穿就是一个类,在类里定义一个事件,只能在该类下进行调用

     Fun<>委托 调用有返回值

    Action<>委托  调用没有返回值

    为什么微软要提供这2个委托? 

    因为避免重复调用相同签名委托

  • 相关阅读:
    HttpURLConnection请求网络数据的GET请求
    ImageLoader的Jar包加载图片
    使用HttpUtils 上传视频文件
    VideoView的视频播放
    VideoView的视频的全屏播放
    Android中在activity中弹出一个popwindow
    随心而记
    Java -- springboot 配置 freemarker
    Tensorflow替换静态图中的OP
    python 系统定时关机
  • 原文地址:https://www.cnblogs.com/ligtcho/p/6642107.html
Copyright © 2011-2022 走看看