可能重复:
为什么使用“new DelegateType(Delegate)”?
new Thread(void Target()) 和 new Thread(new ThreadStart(void Target())) 有什么区别?
所以我经历了一点委托,并以某种方式得到了整个想法。现在,我到处都能看到这样的例子:
public delegate void Deleg();
Deleg deleg = new Deleg(FunctionName);
deleg();
我认为这会创建一个委托对象,其函数指向作为参数传递给构造函数。
现在,我也可以这样做:
public delegate void Deleg();
public Deleg deleg;
deleg = FunctionName;
deleg();
这似乎只创建一个引用,并传递函数的地址。它的工作原理是一样的,并且具有所有的委托功能。
但是现在,不管我在第二个例子中多写了一行,由于第一个在教程中更受欢迎,我真的会从第二个中失去或获得一些东西吗?