C# 委托:把方法组合到一个数组中使用
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace ConsoleApplication1 {class MathOperations{public static double MultiplyByTwo(double value){return value * 2;}public static double Square(double value){return value * value;}}delegate double DoubleOpt(double x);class Program{public enum TimeOfDay{Morning = 0,Afternoons = 1,Evening = 2}static void Main(string[] args){DoubleOpt[] opt = {MathOperations.MultiplyByTwo,MathOperations.Square};for (int i = 0; i < opt.Length;i++ ){System.Console.WriteLine("Using Options [{0}]:",i);ProcessAndDisplayNumber(opt[i], 2.0);ProcessAndDisplayNumber(opt[i], 7.94);ProcessAndDisplayNumber(opt[i], 1.414);Console.WriteLine();}}static void ProcessAndDisplayNumber(DoubleOpt opt,double value){double result = opt(value);System.Console.WriteLine("Value is {0}, result of operation is {1}",value,result);}} }
posted on 2013-10-08 15:43 kernel_main 阅读(...) 评论(...) 编辑 收藏