委托的基本概念:
委托是为了实现把方法实现变量一样实现。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace QP.Learn.DelegateTest04
{
//声明委托
//该委托表示可以引用任何一个带有一个单一的int参数的方法,并返回一个int类型变量
public delegate int NumberChanger(int s);
class Program
{
static int num = 10;
public static int AddNum(int p)
{
num += p;
return num;
}
public static int MultNum(int q)
{
num *= q;
return num;
}
public static int getNum()
{
return num;
}
static void Main(string[] args)
{
//创建委托示例
NumberChanger nc1 = new NumberChanger(AddNum);
NumberChanger nc2 = new NumberChanger(MultNum);
nc1(25);
Console.WriteLine("Value of Num:{0}", getNum());
nc2(5);
Console.WriteLine("Value of Num:{0}", getNum());
Console.ReadKey();
}
}
}