C产品在市场上有哪些独特优势?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1071个文字,预计阅读时间需要5分钟。
上一篇文章介绍了导师的基本情况,本文将探讨导师的其他相关事务。例如,插件编程与导师的理解,导师可以将一个方法作为参数传递,实现递归调用。利用这一特性,我们可以使用导师来完成复杂任务的分解和执行。
上一篇文章写了委托的最基本的一些东西,本篇咱们扯扯委托其他的东西。
示例1插件编程
根据对委托的理解,委托可以把一个方法当作参数进行传递,利用这个特性我们可以使用委托,实现插件编程。
public delegate int Transformer(int x); class Util{ pubilc static void Transform(int[] values, Transformer t){ for(int i = 0; i < values.Length; i++){ values[i] = t?.Invke(values[i]); } } } class Test{ static void Main(){ int[] values = {1,2,3}; Util.Transform(values, Sqare); foreach(int i in values){ Console.WriteLine(i + " "); //1 4 9 } } static int Sqare (int x) => x * x; }
这里的Transform方法就是插件方法,它接受一个委托参数。
本文共计1071个文字,预计阅读时间需要5分钟。
上一篇文章介绍了导师的基本情况,本文将探讨导师的其他相关事务。例如,插件编程与导师的理解,导师可以将一个方法作为参数传递,实现递归调用。利用这一特性,我们可以使用导师来完成复杂任务的分解和执行。
上一篇文章写了委托的最基本的一些东西,本篇咱们扯扯委托其他的东西。
示例1插件编程
根据对委托的理解,委托可以把一个方法当作参数进行传递,利用这个特性我们可以使用委托,实现插件编程。
public delegate int Transformer(int x); class Util{ pubilc static void Transform(int[] values, Transformer t){ for(int i = 0; i < values.Length; i++){ values[i] = t?.Invke(values[i]); } } } class Test{ static void Main(){ int[] values = {1,2,3}; Util.Transform(values, Sqare); foreach(int i in values){ Console.WriteLine(i + " "); //1 4 9 } } static int Sqare (int x) => x * x; }
这里的Transform方法就是插件方法,它接受一个委托参数。

