ylbtech-Unitity-CS:AnonymousDelegates
1.A,效果图返回顶部
1.B,源代码返回顶部
1.B.1,

using System;
using System.Collections.Generic;
using System.Text;namespace AnonymousDelegate_Sample
{// 定义委托方法。delegate decimal CalculateBonus(decimal sales);// 定义一个 Employee 类型。class Employee{public string name;public decimal sales;public decimal bonus;public CalculateBonus calculation_algorithm;}class Program{// 此类将定义两个执行计算的委托。// 第一个是命名方法,第二个是匿名委托。// 首先是命名方法。// 该方法定义“奖金计算”算法的一个可能实现。static decimal CalculateStandardBonus(decimal sales){return sales / 10;}static void Main(string[] args){// 奖金计算中用到的值。// 注意: 此局部变量将变为“捕获的外部变量”。decimal multiplier = 2;// 将此委托定义为命名方法。CalculateBonus standard_bonus = new CalculateBonus(CalculateStandardBonus);// 此委托是匿名的,没有命名方法。// 它定义了一个备选的奖金计算算法。CalculateBonus enhanced_bonus = delegate(decimal sales) { return multiplier * sales / 10; };// 声明一些 Employee 对象。Employee[] staff = new Employee[5];// 填充 Employees 数组。for (int i = 0; i < 5; i++)staff[i] = new Employee();// 将初始值赋给 Employees。staff[0].name = "Mr Apple";staff[0].sales = 100;staff[0].calculation_algorithm = standard_bonus;staff[1].name = "Ms Banana";staff[1].sales = 200;staff[1].calculation_algorithm = standard_bonus;staff[2].name = "Mr Cherry";staff[2].sales = 300;staff[2].calculation_algorithm = standard_bonus;staff[3].name = "Mr Date";staff[3].sales = 100;staff[3].calculation_algorithm = enhanced_bonus;staff[4].name = "Ms Elderberry";staff[4].sales = 250;staff[4].calculation_algorithm = enhanced_bonus;// 计算所有 Employee 的奖金foreach (Employee person in staff)PerformBonusCalculation(person);// 显示所有 Employee 的详细信息foreach (Employee person in staff)DisplayPersonDetails(person);}public static void PerformBonusCalculation(Employee person){// 此方法使用存储在 person 对象中的委托// 来进行计算。// 注意: 此方法能够识别乘数局部变量,尽管// 该变量在此方法的范围之外。//该乘数变量是一个“捕获的外部变量”。person.bonus = person.calculation_algorithm(person.sales);}public static void DisplayPersonDetails(Employee person){Console.WriteLine(person.name);Console.WriteLine(person.bonus);Console.WriteLine("---------------");}}
}

1.B.2,
1.C,下载地址返回顶部

本文转自ylbtech博客园博客,原文链接:http://www.cnblogs.com/ylbtech/p/5062070.html,如需转载请自行联系原作者

ylbtech-Unitity-CS:AnonymousDelegates相关推荐

  1. ASP.NET MVC:WebPageBase.cs

    ylbtech-funcation-Utility: ASP.NET MVC:WebPageBase.cs 充当表示 ASP.NET Razor 页的类的基类. 1.A,WebPageBase 抽象类 ...

  2. vs2003复制一个web窗体,没有更改指向同一个cs 文件,引发大问题

    今天我在原来的考试系统的出题模块中,input模块,因为增加的一个web窗体编译有问题,于是就复制了原来的启动项页面input,再改了名字为set1,然后在set1页面上删除了控件和代码,再把set1 ...

  3. php 开发cs,PHP开发CS结构的技巧

    PHP开发CS结构的技巧 PHP是一门高效的网络编程语言,由于它具有编写灵活.运行快速等优点,迅速成为Web程序员的`首选语言.以下是小编为大家搜索整理的PHP开发CS结构的技巧,希望能给大家带来帮助 ...

  4. vs中将网站aspx.cs文件打包成一个dll

    vs中将网站aspx.cs文件打包成一个dll 23小时前 vs中将网站asp.net cs文件打包成一个dll. 在vs2008以上的版本中可以建立web应用来开发网站,这样网站aspx.cs文件[ ...

  5. 短信编码类无错版PDUdecoding.cs

    / ///程 序 员:武志文(蚕蛹) ///          sillnet163.net ///文    件:PDUdecoding.cs ///概    要:针对国内短信编码(USC2) /// ...

  6. cs架构嵌入bs_CS与BS架构区别、比较、及现状与趋势分析

    一.简介  CS即Client/Server(客户机/服务器)结构,C/S结构在技术上很成熟,它的主要特点是交互性强.具有安全的存取模式.网络通信量低.响应速度快.利于处理大量数据.但是该结构的程序是 ...

  7. 把JS 脚本嵌入CS运行

    下面这段视频,是让您知道怎样把播放器的javascript放入C#类别中.在调用这个类别时,只传入相关的参数,即可运行.一时类别封装了,在前台xxx.aspx或xxx.aspx.cs看不到播放器的代码 ...

  8. 想在SqlDbHelper.cs类中加的垃圾方法

    虽然没改写SqlDbHelper.cs类的能力,但好不容易想出来的,放着留个纪念~~~~~         /**//// <summary>         /// 执行SQL语句,返回 ...

  9. Asp.Net Core 入门(一)——Program.cs做了什么

    ASP.NET Core 是微软推出的一种全新的跨平台开源 .NET 框架,用于在 Windows.Mac 或 Linux 上生成基于云的新式 Web 应用程序.国内目前关于Asp.Net Core的 ...

  10. atitit.跨架构 bs cs解决方案. 自定义web服务器的实现方案 java .net jetty  HttpListener...

    atitit.跨架构 bs cs解决方案. 自定义web服务器的实现方案 java .net jetty  HttpListener 1. 自定义web服务器的实现方案,基于原始socket vs   ...

最新文章

  1. 七个算法小仙女,写出一本1200页的深度学习技术手册!(限时公开下载)
  2. SLF4J 之logback.xml配置文件实例及其说明
  3. 全球及中国奢华高档服装行业发展规划及投资价值评估报告2021年版
  4. Hadoop 底层原理介绍
  5. python docx 合并文档 图片_Python+pymupdf处理PDF文档案例6则
  6. LOJ.2718.[NOI2018]归程(Kruskal重构树 倍增)
  7. matlab 线性规划_从零开始的matlab学习笔记——(37)线性规划——后传
  8. java压缩文件太慢_java 解压6万个ZIP文件,如何提升速度?
  9. 带叉叉的GridView
  10. ahb总线协议主机_AMBA总线协议之一文看懂AMBA2 AHB2与AMBA3 AHBLite总线协议的区别
  11. 华工计算机学院专硕分数线,2017华南理工大学
  12. 最新版Ontrack EasyRecovery电脑数据恢复软件应用
  13. Mixly遥控调光器
  14. N76E003红外解码程序
  15. Gitlab+猪齿鱼 实现自动化部署
  16. www.lthack.com php,[经验谈] PHP漏洞全解 ---文章转载自(十八哥,自学it网_公益IT培训)...
  17. 激发数据潜力,“东数西算”带动数据中心新发展
  18. excel分列---多页批量操作--vba宏实现
  19. 用python批量处理图片_Python学习九十三天:Python批量处理图片
  20. “放心消费”宣言传递正品心智,网易考拉8.16大促首日获用户好评

热门文章

  1. NOI2003 文本编辑器
  2. 右键文件夹导致资源管理器关闭的处理办法
  3. Xcode 12 引用缺失包:libstdc++.tbd libstdc++.6.tbd libstdc++.6.0.9.tbd 等
  4. redis哨兵配置和redis-cluster搭建
  5. 跨域两种解决方案CORS以及JSONP
  6. SQL简单基础(1)
  7. Sublime Text3插件管理
  8. const char * char * const
  9. 奇葩Bug:IE下表单要提交两次
  10. 科创板开市暴涨,详解25家企业的“造富”能力