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

网站建设属于技术活吗中国纪检监察报社官网

网站建设属于技术活吗,中国纪检监察报社官网,信阳市住房建设局网站,互联网专线做网站怎么做数据Action和delegate类似但没有返回值 Action和delegate在C#编程语言中有明显的区别,主要体现在它们的定义、用途和特性上。 1. 定义 Delegate:Delegate是C#中用于定义方法签名的类型,它允许将方法作为参数传递,或者将方法赋值给变…

Action和delegate类似但没有返回值

Action和delegate在C#编程语言中有明显的区别,主要体现在它们的定义、用途和特性上。

1. 定义

  • Delegate:Delegate是C#中用于定义方法签名的类型,它允许将方法作为参数传递,或者将方法赋值给变量。Delegate是一种类型安全的函数指针,至少可以有0个参数,最多可以有32个参数,并且既可以没有返回值,也可以指定返回值类型。
  • Action:Action是C#中的一个泛型委托,它特别用于表示无返回值的方法。Action至少可以有0个参数,最多可以有16个参数,且这些方法都不应该有返回值。Action内部实际也是使用delegate实现的,但当普通的delegate定义的参数与Action的个数、类型一致时,Action提供了一种更简洁、规范的表示方式。

2. 用途

  • Delegate:由于其灵活性和强大的功能,Delegate在C#中被广泛用于回调方法、事件处理、异步编程等场景。它可以引用任何与定义的方法签名相匹配的方法,包括静态方法和实例方法。
  • Action:Action主要用于表示那些执行某些操作但不返回任何结果的方法。它简化了无返回值方法的委托声明,使得代码更加简洁易读。在需要传递无返回值方法作为参数或返回值的场景中,Action是一个很好的选择。

3. 特性

  • Delegate:具有高度的灵活性和可重用性,可以引用多种类型的方法,包括静态方法和实例方法。同时,Delegate支持链式调用(通过+-操作符),允许将多个委托组合成一个委托链。
  • Action:作为无返回值的泛型委托,Action提供了一种更简洁、规范的表示方式。与普通的Delegate相比,它在声明和使用时更加直观和方便。此外,由于Action的泛型特性,它还可以轻松地处理不同数量和类型的参数。

4. 示例

  • Delegate示例

    public delegate int AddDelegate(int a, int b);  
    public static int Add(int a, int b) { return a + b; }  AddDelegate del = new AddDelegate(Add);  
    int result = del(1, 2); // 结果为3
  • Action示例

    Action<int, int> act = (a, b) => Console.WriteLine(a + b);  
    act(1, 2); // 输出3

类似函数指针,代码示例

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class ActionDemo : MonoBehaviour
{Action  action;//表示无参Action<int> action1;//表示有传入参数intvoid Start(){action = actionH1;//没有参数action();action1 = actionH2;//一个 int参数 action1(456);actionH3(() => { Debug.Log("执行完actionH3了"); });//lambda 表达式 来执行委托actionH3(actionH4);//执行完 actionH3后回调 actionH4方法}private void actionH1()//没有参数{Debug.Log(123);}private void actionH2(int index)//参数int{Debug.Log(index);}private void actionH3(Action act)//参数 Action{Debug.Log("在执行actionH3");act();//回调 这个 委托方法}private void actionH4()//执行完 actionH3后的回调执行{Debug.Log("执行完actionH3了");}
}

综上所述,Action和Delegate在C#中各有其独特的定义、用途和特性。选择使用哪一个主要取决于具体的编程需求和场景。


文章转载自:

http://39bPz4u7.hwcLn.cn
http://GM4OY4RA.hwcLn.cn
http://z5yOj6SA.hwcLn.cn
http://BXbUfaM8.hwcLn.cn
http://cJ5rgvfJ.hwcLn.cn
http://Zb82xL3Y.hwcLn.cn
http://IkX99BNQ.hwcLn.cn
http://i2SQwyoQ.hwcLn.cn
http://m0ZSD3OX.hwcLn.cn
http://sPk7SBCT.hwcLn.cn
http://8I84OyMo.hwcLn.cn
http://3379wWAl.hwcLn.cn
http://qfhmUt04.hwcLn.cn
http://jwiKjCtl.hwcLn.cn
http://jVXSk4mK.hwcLn.cn
http://liXXNKHo.hwcLn.cn
http://bcznkMNp.hwcLn.cn
http://vPg31HnY.hwcLn.cn
http://kIZlw8QY.hwcLn.cn
http://Y7LXMi5T.hwcLn.cn
http://1x57d7uw.hwcLn.cn
http://LmPdfJHB.hwcLn.cn
http://dt8PqkZa.hwcLn.cn
http://EyoDUv8s.hwcLn.cn
http://ZxqL0F4k.hwcLn.cn
http://qwRtvobr.hwcLn.cn
http://KypMENJ9.hwcLn.cn
http://2SrXHeyv.hwcLn.cn
http://ic66XyXd.hwcLn.cn
http://S75hU2rp.hwcLn.cn
http://www.dtcms.com/wzjs/625383.html

相关文章:

  • 如何用phpstorm做网站c 微信小程序开发教程
  • 印刷网站建设价格郑州网站开发douyanet
  • 团购网站的发展网站建设外包 源代码
  • 四川省城乡住房建设部网站首页纺织网站制作123纺织网
  • 网站产品标签文章标签怎么做查看网站模板
  • 义乌网站制作公司把网站放到服务器
  • 小面网站建设音乐播放器网站怎么做
  • 制作英文网站多少钱网页搜索引擎优化技术
  • 自己公司的网站怎么编辑兴安盟做网站公司
  • vs做网站需要的插件网站优化快照
  • 深圳网站建设seowordpress添加百度地图吗
  • 莱特币做空网站网站开发系统学习
  • 深圳建网站公司怎么选择苏州做公司邮箱企业网站
  • 深圳龙华做网站的公司wordpress换域名主题
  • 网站开发需要多长时间上海网站建站服务
  • 万齐网站建设中铁建设集团招标平台
  • 朋友圈广告河北seo网站优化报价
  • 苏州专门网站给我一个网站2021
  • 网站文章排版的重要性做程序任务发布的网站
  • 太原便宜做网站的公司中山手机网站建设
  • 利搜网站排名软件wordpress百度云插件下载
  • 河南企业建设网站ipv6网站开发
  • 番号网站怎么做视频播放网站建设
  • 常用网站开发语言河南省新闻奖评选通知
  • 网站应如何设计精准流量推广
  • 网上商城开题报告免费网站自动优化软件
  • wordpress网站维护中莆田百度推广开户
  • 益阳建设局网站wordpress评论可见插件
  • 软件源码购买一般在哪个网站可免费下载的ppt模板
  • 淘宝网做网站比较好的app创意想法