考虑以下内容:
第一种方法:
public void f3()
{
f2();
f1();
}
还有这个……
第二种方法:
class Sample
{
public delegate void MyDelegate(string s);
MyDelegate obj;
public Sample()
{
obj += new MyDelegate(input);
obj+=new MyDelegate(something);
obj += new MyDelegate(someStaticMethod);
}
}
当我调用 f3() 时,它将调用其中列出的函数......当我调用委托(delegate)时也会发生同样的情况......所以当我可以使用第一种方法时委托(delegate)来处理某些事件有什么用.. . 第一种方法也封装了方法调用..
最佳答案
在委托(delegate)的情况下,未指定附加函数的调用顺序。
此外,您可以将任意数量的函数附加到它,甚至在运行时,来自其他对象,而不仅仅是第一种方法中的硬编码对象。委托(delegate)具有更广泛的用途。
关于c# - 嵌套方法调用和委托(delegate)有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11226584/