C#进阶语法复习——委托

Posted on 2021-05-28 16:59  Nicela  阅读(83)  评论(0)    收藏  举报

(1)委托是什么?

 

 

(2)基本语法

 

 

 (3)定义自定义委托

 

 

 (4)使用定义好的委托

//委托容器装函数的时候一定要装匹配容器的,就是和委托申明的函数返回值参数等相同的函数

 

两种写法:

 

 

 

这个函数声明在program类中

 

 

 

 

 

 

 

 *********************************************************

委托最大的作用是先处理别的逻辑,当这些逻辑处理完了再执行传入的函数(延迟调用)

 

 

 

 

 

 

 

 

 ********************************************************

(5)多播委托

必须要先赋值,不管是赋值为空还是赋值为一个函数,不能一开始就使用+=

 

增:

 

 

 

 

 使用+=会使得Fun调用了两次

案例:

 

 

 结果:

 

 

 删:

自定义泛型委托:

delegate T MyFun3<T,K>(T v,K k);

 

 

 *************************************************

(6)系统提供的委托

第一个是Action是代表一个无参无返回值的函数

 

第二个是Func代表的是确定返回值的无参函数

 

 

 

 

 

 

 

 

第三个是有参数无返回值的委托

 

 

 

16个重载代表有16个委托

 

 

 第四个还有16个既有参数还有返回值的Func,注意,最后一个类型代表的是返回值类型,前面的都代表参数类型。

 

 

 *******************************************************************

总结:

 

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3