在本文中,我将解释C#中的单播委托(Singlecast Delegate)。委托类似于C或者C++中的函数指针,它可以保存函数的引用。
它是C#中的一种新对象类型。
委托是一种非常特殊的对象类型,因为在我们以前定义的所有对象中都包含了包含的数据,但是委托只包含方法的详细信息。
单播委托
单播委托一次引用单个方法。
在此,该委托一次被分配给单个方法。
它们来自system.delegate类。
C# 单播委托示例
using System; public delegate int Addsub(int a); namespace DelegateAppl { class DelegateExample { static int num = 5; public static int AddNum(int b) { num += b; return num; } public static int subNum(int c) { num -= c; return num; } public static int getNum() { return num; } static void Main(string[] args) { //create delegate instances Addsub D1 = new Addsub(AddNum); Addsub D2 = new Addsub(subNum); D1(25); Console.WriteLine("Value of Num: {0}", getNum()); D2(5); Console.WriteLine("Value of Num: {0}", getNum()); Console.ReadKey(); } } }
C# 单播委托示例
public delegate int Addsub(int a) public is access modifier. int is access ReturnType.
AddSub是委托名称。
委托分为:
- SingleCast delegate(单播委托)
- Multiplecast delegate (多播委托)
委托声明
[attributes] [modifiers] delegate ReturnType Name ([formal-parameters]);
其中:
修饰符(modifier)可以是以下关键字之一
- public
- private
- protected
- internal
ReturnType 可以是我们使用的任何数据类型。
Name 是委托的名称。
日期:2020-04-11 23:03:51 来源:oir作者:oir