为啥C#委托方法可以当数据类型用
谢邀。委托是一个类型安全的对象,它指向程序中另一个以后会被调用的方法(或多个方法)。通俗的说,委托是一个可以引用方法的对象,当创建一个委托,也就创建一个引用方法的对象,进而就可以调用那个方法,即委托可以调用它所指的方法。简单来说就是c++的函数指针。之所以委托是一个类,类是自定义的一个数据类型。所以我们可以用泛型来存到list中的。下面是我写的简单程序:在一个Delete的类里声明一个委托和要调用的俩个方法: public delegate int BaseDelegate(int num1, int num2);
public class Delegate
{
public static int Multiply(int num1, int num2)
【为啥C#委托方法可以当数据类型用】 {
return num1 * num2;
}
public static int Divide(int num1, int num2)
{
return num1 / num2;
}
}
在mian函数里把这个俩个方法委托放心List里,然后循环调用
class Program
{
static void Main(string args)
{
List\u0026lt;BaseDelegate\u0026gt; list = new List\u0026lt;BaseDelegate\u0026gt;();
list.Add(new BaseDelegate(Delegate.Multiply));
list.Add(new BaseDelegate(Delegate.Divide));
for(int i = 0; i\u0026lt;list.Count; i++)
{
Console.WriteLine(list(1, 2));
}
}
}
■网友
委托类型也可以作为泛型存到list中。没觉得有什么问题呀
推荐阅读
- 长寿花怎么养护?掌握两大方法,乖乖花开“爆盆”,花香四溢!
- 为啥看到书柜上的藏书会有心旷神怡的感觉
- 为啥知乎上普便有一种【我在北上广深打工,所以拥有更好的视野】这样的错觉
- 为啥工商银行的用户体验如此之差
- 汽车|看了中消协4S店服务测评调查结果,终于知道法系车为啥卖不好了
- 有啥方法,网站,项目可以自己练习计算广告学
- 你为啥从窝窝商城离职?
- 直播会成为品牌传播的另一个途径么有哪些可行的方法感觉有戏又没头绪好捉急。
- |邳州市岔河镇探索创新工作方法以“三个凝聚”助力统战工作提质增效
- 为啥5G和2.4G默认的BSSID是相同的
