代码改变世界

使用委托调用函数

2012-04-25 10:24  精诚所至 金石为开  阅读(638)  评论(0编辑  收藏  举报

使用委托调用函数。

using System;
namespace a
{
	class Program
	{
		delegate double ProcessDelegate(double param1,double param2);
		static double Multiply(double param1,double param2)
		{
			return param1*param2;
		}
		static double Divide(double param1,double param2)
		{
			return param1/param2;
		}
		static void Main(string[] args)
		{
			ProcessDelegate process;
			Console.WriteLine("Enter 2 numbers separated with a comma:");
			string input =Console.ReadLine();
			int commaPos=input.IndexOf(',');
			double param1=Convert.ToDouble(input.Substring(0,commaPos));
			double param2=Convert.ToDouble(input.Substring(commaPos+1,input.Length-commaPos-1));
			Console.WriteLine("Enter M to multiply or D to divide:");
			input =Console.ReadLine();
			if(input=="M")
				process=new ProcessDelegate(Multiply);
			else
				process=new ProcessDelegate(Divide);
			Console.WriteLine("Result:{0}",process(param1,param2));
			Console.ReadKey();
		}
	}
}