C# 委托

Posted 冯海亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 委托相关的知识,希望对你有一定的参考价值。

  好记性不如烂笔头,写出来总归印象深一些。

委托

  1.  一种自定义数据结构,使用关键字delegate定义,形式为 delegate 返回类型 委托名 (参数列表),其返回类型及参数列表需要与委托方法一致,使用步骤为 定义--声明--初始化--调用。委托中存储的是方法的地址,为引用类型,当调用一个委托时,程序会自动顺序执行其存储的方法。
  2. 委托随着C#版本的更迭有多种方式初始化
    delegate int Mydel(int a,int b);      //定义委托
    Mydel _mydel;                         //声明
    _mydel=new Mydel(Fun1);              //初始化方法1
    _mydel=Fun1; //初始化方法2 _mydel(a,b); //调用
  3. 委托可以使用+=及-=绑定及解绑方法
    _mydel+=Fun2;            //在原有Fun1基础上又绑定了Fun2,顺序执行
    _mydel-=Fun2;            //解绑Fun2 目前只有Fun1了

以上是关于C# 委托的主要内容,如果未能解决你的问题,请参考以下文章

C#系列:其实委托很简单(下)

C#之委托

我想从 C++ 非托管代码调用 C# 委托。无参数委托工作正常,但有参数委托使我的程序崩溃

C#之委托

C#事件

C#进阶系列16 委托