C#的委托类(2分钟了解委托用法)

    技术2023-06-23  68

    什么是委托(delegate)

    Msdn中对Delegate的解释如下:

    C#中的委托类似于C或C++中的函数指针。使用委托使程序员可以将方法引用封装在委托对象内。然后可以将该委托对象传递给可调用所引用方法的代码,而不必在编译时知道将调用哪个方法。与C或C++中的函数指针不同,委托是面向对象、类型安全的,并且是安全的。

    换句话说,delegate是一种数据类型,delegate类中封装的是方法的执行起点。delegate让我们可以把方法变成一个变量来管理和操作。

    使用委托

    我们常用用委托来控制动态变化的方法调用。比如当我需要一句情况调用一些方法中的一个或几个,就可以使用委托类来对方法进行统一管理。

    委托的声明和初始化: public delegate void TestCall(); //声明一个委托类 public TestCall testcall; //创建一个该类对象 testfcall = delegate() { }; //delegate对象的初始化 委托的管理 //这里function表示方法的句柄,而非字符串形式的方法名 testcall += funcionName; //添加委托方法 testcall -= funcionName; //去除委托方法 委托的调用 testcall(); //调用当前testcall中添加的所有方法
    Processed: 0.014, SQL: 9