博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#基础知识——委托
阅读量:5061 次
发布时间:2019-06-12

本文共 1131 字,大约阅读时间需要 3 分钟。

委托(delegate)是一种可以把引用存储为函数的类型。委托声明类似于函数,但不带函数体。且使用delegate关键字。委托的声明指定了一个返回类型和一个参数列表。

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.WriteLines("Enter 2 numbers separated with a comma:");

    string input=Console.ReadLine();

    int commaPos=input.IndexOf(',');         //IndexOf(',')把括号里的字符位置取出赋给变量commaPos

    double param1=Convert.ToDouble(input.Substring(0,commaPos));    //Substring(0,9)把9前面的取出,但不包括第9个

    double param2=Convert.ToDouble(input.Substring(commaPos+1,input.Length-commaPos-1));

    Console.WriteLines("Enter M to multiply or D to divide:");

    input=Console.ReadLine();

    if(input==“M”)

      process=new processDelegate(Multiply);

    else

      process=new processDelegate(Divide);

    Console.WriteLines("Result:{0}",process(param1,param2));

    Console.ReadKey();

  }

}

 

转载于:https://www.cnblogs.com/1046277638longdaohui/p/3191606.html

你可能感兴趣的文章
centos 图形界面和命令行界面切换(转载)
查看>>
Maven启用代理访问
查看>>
Primary definition
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
发送请求时params和data的区别
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
一步步学习微软InfoPath2010和SP2010--第七章节--从SP列表和业务数据连接接收数据(4)--外部项目选取器和业务数据连接...
查看>>
如何增强你的SharePoint 团队网站首页
查看>>
FZU 1914 Funny Positive Sequence(线性算法)
查看>>
oracle 报错ORA-12514: TNS:listener does not currently know of service requested in connec
查看>>
基于grunt构建的前端集成开发环境
查看>>
MySQL服务读取参数文件my.cnf的规律研究探索
查看>>
java string(转)
查看>>
__all__有趣的属性
查看>>
BZOJ 5180 [Baltic2016]Cities(斯坦纳树)
查看>>
写博客
查看>>
利用循环播放dataurl的视频来防止锁屏:NoSleep.js
查看>>
python3 生成器与迭代器
查看>>