返回顶部
首页 > 资讯 > 精选 >C#委托的基础概念和特点
  • 391
分享到

C#委托的基础概念和特点

2023-06-17 12:06:57 391人浏览 薄情痞子
摘要

本篇内容主要讲解“C#委托的基础概念和特点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#委托的基础概念和特点”吧!委托具有以下特点:委托类似于 c++ 函数指针,但它是类型安全的。委托允许将

本篇内容主要讲解“C#委托的基础概念和特点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#委托的基础概念和特点”吧!

委托具有以下特点:

委托类似于 c++ 函数指针,但它是类型安全的。

委托允许将方法作为参数进行传递。

委托可用于定义回调方法。

委托可以链接在一起;例如,可以对一个事件调用多个方法。

方法不需要与委托签名精确匹配。有关更多信息,请参见协变和逆变。

C# 2.0 版引入了匿名方法的概念,此类方法允许将代码块作为参数传递,以代替单独定义的方法。

在C#中使用委托分为三步:

1.定义委托:

//声明委托  public delegate void MyDel();

2.实例化委托:

TestDel t = new TestDel();   Console.WriteLine("-----以下是简单使用委托演示--------");  //t.MyMethod();  ///实例化委托,用一个方法来进行实例化  ///该方法签名要与委托签名一致  MyDel del = new MyDel(t.MyMethod);

3.调用委托:

///调用委托  del();

好了,其实委托的变化很复杂,但基本都会符合这么三个步骤,说过了,这些,再来看一下完整的代码:

namespace DelegateDemo{   //声明委托   public delegate void MyDel();   //声明带参的委托   public delegate void MyDel2(int num1, int num2);   //声明带有返值的委托   public delegate string MyDel3(string s);   //声明委托用于演示匿名方法   public delegate string ProcessString(string s);   class Program { static void Main(string[] args)   { #region 委托演示      #endregion   //MyReturnDelegateTest my = new MyReturnDelegateTest();   //my.MyTest();   MyParamDelegateTest myParam = new MyParamDelegateTest(); myParam.AddBooks();   myParam.MyTest();   } }  public class TestDel {   #region 普通方法   public static void MyStaticMethod()   {   Console.WriteLine("My Static Method");   }   public void MyMethod()   {   Console.WriteLine("MyMethod");   }   public void MyMethod2()   {   Console.WriteLine("My Method 22222222222"); }   public static void MyMethod3()   {   Console.WriteLine("My Method 3333333333333");   }   public void MyMethod(int num1, int num2) { Console.WriteLine(num1+num2);   }   public string MyMethod(string s)   { return s.ToUpper(); }   #endregion   /// <summary>   /// 委托作为方法参数   /// </summary>   /// <param name="s"></param>   /// <param name="del3"></param>   public static void MyParamMethod(string s, MyDel3 del3) { Console.WriteLine(del3(s)); }   /// <summary>   /// 委托作为返回值   /// </summary>   /// <param name="s"></param>   /// <returns></returns> public MyDel3 MyReturnMethod() {   ///返回符合委托规范的方法   return MyMethod;   }   }

通过例子,我们可以知道,使用委托可以将多个方法绑定到同一个委托变量,当调用此变量时(这里用“调用”这个词,是因为此变量代表一个方法),可以依次调用所有绑定的方法。

到此,相信大家对“C#委托的基础概念和特点”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: C#委托的基础概念和特点

本文链接: https://lsjlt.com/news/289319.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • C#委托的基础概念和特点
    本篇内容主要讲解“C#委托的基础概念和特点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#委托的基础概念和特点”吧!委托具有以下特点:委托类似于 C++ 函数指针,但它是类型安全的。委托允许将...
    99+
    2023-06-17
  • 详解C#中委托的概念与使用
    目录委托的概念多播委托拖动按钮委托的概念 委托这个名字取的神乎其神的,但实质是函数式编程,把函数作为参数传递给另一个参数。对于C语言程序员来说,就是把函数指针当作参数传递给另一个函数...
    99+
    2023-02-27
    C#委托使用 C#委托
  • C++基础概念讲述
    目录1.C++相关网站推荐2.C++和C的关系3.C++特性说明3.1与底层硬件紧密结合3.2对象生命周期的精确控制3.3Zero-Overhead Abstraction首先,通过...
    99+
    2024-04-02
  • C#中委托的概念与使用方法是什么
    本篇内容主要讲解“C#中委托的概念与使用方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#中委托的概念与使用方法是什么”吧!委托的概念委托这个名字取的神乎其神的,但实质是函数式编程,把...
    99+
    2023-07-05
  • C++基础概念是什么
    这篇文章主要讲解了“C++基础概念是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C++基础概念是什么”吧!首先,通过一张最新(2021.11)的编程语言排名图来了解常见的编程语言:从图...
    99+
    2023-06-22
  • C语言的概念和特点是什么
    本篇内容介绍了“C语言的概念和特点是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!我们都知道,C语言是一种计算机程序设计语言。它既有高级...
    99+
    2023-06-17
  • C#中的多播委托和泛型委托
    多播委托 简介 每一个委托都是继承自MulticastDelegate,也就是每个都是多播委托。带返回值的多播委托只返回最后一个方法的值多播委托可以用加减号来操作方法的增加或者减少。...
    99+
    2024-04-02
  • C++ void的基础概念是什么
    本篇文章为大家展示了C++ void的基础概念是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。C++编程语言中的很多概念都值得我们去不断的学习,不断的从中积累经验以帮助我们在程序编写时获得更大的...
    99+
    2023-06-17
  • C#中委托的基础入门与实现方法
    目录前言关于委托委托的实现一、基本实现方式二、使用委托时的一些特殊方式1、委托实例对象的创建多元化:2、事件绑定的多种方式三、委托的几种特殊实现方式1,使用Action方法2,使用F...
    99+
    2024-04-02
  • C#中委托的基础介绍与实现方法
    这篇文章主要讲解了“C#中委托的基础介绍与实现方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“C#中委托的基础介绍与实现方法”吧!目录前言关于委托委托的实现一、基本实现方式二、使用委托时的...
    99+
    2023-06-20
  • 哪项不属于云服务器ecs基础概念的特点
    虚拟化 虚拟化是云计算中的一项重要技术,它将计算资源分成不同的虚拟机,使它们可以共享和隔离。云服务器也可以虚拟化,以便用户可以在不同的云服务器上运行相同的软件和应用程序。这种虚拟化的好处是,可以提高计算资源的利用率,降低硬件成本,同时...
    99+
    2023-10-28
    不属 概念 服务器
  • 云服务器的概念和特点
    云服务器(Cloud Direct)是一种用于存储和共享计算资源的服务器,可以通过互联网直接连接到互联网上的资源。它是一种云存储技术,通过使用云服务器中的网络连接和存储功能来支持各种文件、数据库和应用程序,从而大大提高了用户的资源使用效率和...
    99+
    2023-10-25
    概念 服务器
  • C++继承基础概念是什么
    C++继承基础概念是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。C++编程语言同样也具有面向对象的相关特性。那么它都具有哪些特点呢?在这里我们就为大家详细...
    99+
    2023-06-17
  • 以下哪项不是云服务器ecs基础概念的特点
    首先,云服务器是指一种提供云端服务器租用服务的平台。它可以帮助用户租用虚拟服务器,从而创建自己的应用程序和网站。它提供了一种方便、快捷的方式来访问和管理服务器上的资源,同时还提供了一些额外的服务,例如备份、数据恢复、安全性等。云服务器还可以...
    99+
    2023-10-28
    概念 服务器 基础
  • 哪一项不属于云服务器ecs基础概念的特点
    云服务器ECS基础概念与云计算服务有很多共同之处,但也有一些不同之处。下面是其中的几点: 虚拟化技术:云服务器ECS基础概念的虚拟化技术主要分为三种:Virtual LANs、Docker-Swarm和Kubernetes。其中,Doc...
    99+
    2023-10-26
    不属 概念 哪一项
  • python链表的基础概念和基础用法详解
    本文为大家分享了python链表的基础概念和基础用法,供大家参考,具体内容如下 一、什么是链表 链表是由多个不同的节点组成,每个节点通过指针区域关联到一起链表的头指针,指向了头节点,...
    99+
    2024-04-02
  • C#中的委托和事件
    目录一、委托1、什么是委托1.1 定义委托1.2 声明并实例化委托1.3 委托实例的调用2、委托类型和委托实例2、多种途径实例化委托3、链式委托总结二、事件1、什么是事件2、如何声明...
    99+
    2024-04-02
  • JavaHttp的基础概念了解
    目录基本概念了解网络的分层HTTP协议HTTP和TCP的关系总结学完了计算机网络课程以后,确实学到了一些网络的概念,初步拥有了对网络的一些认识。这些概念虽然可以用来解释平时网络上遇到...
    99+
    2023-05-17
    java Http Http基础概念
  • 以下哪些不属于云服务器ecs基础概念的特点
    云服务器(Cloud Storage Service)是一种云计算服务,它允许用户通过互联网访问其提供的资源,例如网站、APP、数据库和虚拟桌面,无需拥有任何计算机或服务器。以下是云服务器与传统服务器的主要区别: 云服务器支持互联网访问...
    99+
    2023-10-26
    不属 概念 服务器
  • C#中的多播委托和泛型委托实例分析
    这篇“C#中的多播委托和泛型委托实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#中的多播委托和泛型委托实例分析”文...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作