• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C#使用委托来调用函数

OC/C/C++ 水墨上仙 2467次浏览

C#中可以使用委托来调用函数,具体这样实现的好处有待以后慢慢领悟,下面是实现的简单代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication7
{
    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();
        }
    }
}


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C#使用委托来调用函数
喜欢 (0)
加载中……