C#教程
C#控制语句
C#函数
C#数组
C#面向对象
C#命名空间和异常
C#文件IO
C#集合
C#多线程
C#其它

C# 委托

C# 委托

在 C# 中,委托是对方法的引用。它的工作原理类似于 C 和 C++ 中的函数指针。但它比函数指针更面向对象、安全和类型安全。
对于静态方法,委托只封装方法。但是对于实例方法,它同时封装了方法和实例。
委托的最佳用途是用作事件。
委托声明在内部定义了一个类,该类是System.Delegate.

C# 委托示例

让我们看一个简单的 C# 委托示例,它调用 add() 和 mul( ) 方法。
using System;
delegate int Calculator(int n);//declaring delegate
    
public class DelegateExample
{
    static int number = 100;
    public static int add(int n)
    {
        number = number + n;
        return number;
    }
    public static int mul(int n)
    {
        number = number * n;
        return number;
    }
    public static int getNumber()
    {
        return number;
    }
    public static void Main(string[] args)
    {
        Calculator c1 = new Calculator(add);//instantiating delegate
        Calculator c2 = new Calculator(mul);
        c1(20);//calling method using delegate
        Console.WriteLine("After c1 delegate, Number is: " + getNumber());
        c2(3);
        Console.WriteLine("After c2 delegate, Number is: " + getNumber());
    }
}
输出:
 After c1 delegate, Number is: 120
After c2 delegate, Number is: 360
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4