当前位置: 首页 > ai >正文

委托从入门到入土

1、What is Delegate?

什么是委托?据《C#图解教程》定义,委托是一种持有一个或者多个方法的对象,而查看委托的类型,我们会发现委托实质上就是一个类,所以委托是与Program类同一级别,定义时要注意不要在类内部定义了。

2、委托的定义

在了解委托的具体作用前,我们先来看看如何创建一个委托,以及如何使用一个委托。

    // 委托的定义delegate void MyDel(int value);class Program{static void Main(string[] args){}}

如上代码,委托虽然是一个类,但是它的定义和方法的定义很相似,有返回类型(void),有传参(value),但同时也没有方法主体。上述委托表示MyDel类型的委托,只会接受不返回值,且传参仅有一个int类型参数的方法。

3、委托简单的使用

    // 委托的定义delegate void MyDel(int value);class Program{static void Main(string[] args){int value = 20;MyDel myDel1 = new MyDel(GetBigValue);MyDel myDel2 = new MyDel(GetSmallValue);if (value > 50)myDel1.Invoke(value); // myDel1(value)也可elsemyDel2.Invoke(value); // myDel2(value)也可}public static void GetBigValue(int value){ Console.WriteLine($"{value} is big");}public static void GetSmallValue(int value){Console.WriteLine($"{value} is small");}}

总的来说,就是定义一个委托,管理多个方法,根据判断调用对应的方法即可。

http://www.xdnf.cn/news/9770.html

相关文章:

  • Elasticsearch的集群管理介绍
  • 乾元通渠道商中标青海省自然灾害应急能力提升工程基层防灾项目
  • 充电便捷,新能源汽车移动充电服务如何预约充电
  • DAY 14 SHAP库的绘制
  • 2024 CKA模拟系统制作 | Step-By-Step | 12、创建多容器Pod
  • 系统安装出现的问题 老毛桃
  • 【C++】SDL2环境安装及AI编码简单的俄罗斯方块游戏
  • 阿里云服务器邮件发送失败(dail tcp xxxx:25: i/o timeout)因为阿里云默认禁用 25 端口
  • List 源码翻译
  • LeetCode 215:数组中的第K个最大元素 - 两种高效解法详解
  • npm run build 报错:Some chunks are larger than 500 KB after minification
  • 2-向量可视化
  • 【C++高级主题】命令空间(三):未命名的命名空间
  • IT选型指南:电信行业需要怎样的服务器?
  • springboot配置cors拦截器与cors解释
  • 代理IP在云计算中的应用:技术演进与场景实践
  • React 生命周期与 Hook:从原理到实战全解析
  • 车载通信网络 --- CAN FD与CAN XL
  • SQLite 中文写入失败问题总结
  • 无人设备遥控器之红外技术篇
  • Arbitrum Stylus 合约实战 :Rust 实现 ERC20
  • lua的注意事项2
  • 跟Gemini学做PPT-模板样式的下载
  • PHP序列化和反序列化
  • 包会!在Linux上用bcc运行第一个eBPF程序
  • 【25-cv-05935】Keith律所代理(绿色巴士图)版权维权案
  • STM32 启动文件详解:理解单片机启动的“引导者”
  • 【ARM AMBA APB 入门 1.1 -- APB 读写寄存器 RTL 实现】
  • 443端口:HTTPS通信的安全基石
  • 奥威BI+AI——高效智能数据分析工具,引领数据分析新时代