我在C#中有一个Delegate方法,我必须引用多个函数... 代表可以一次指向多个功能吗? 如果是,一次可以指出多少个函数?
答案 0 :(得分:1)
是的,可以同时为一个委托分配多个对象,当您调用委托时,将按照添加的顺序调用这些函数。 这称为MulticastDelegate委托
delegate void myDelegate();
void foo()
{
Console.WriteLine("hello");
}
void bar()
{
Console.WriteLine("world");
}
void Main()
{
myDelegate d = foo;
d+=bar;
d();
}
可生产
hello
world
关于你可以用这种方式引用的最大函数数量 - 我找不到任何硬数字,但是一个简单的循环测试允许我添加foo
和bar
超过10,000次(在我感到无聊并点击“休息”之前所以我会说可能没有真正的实际限制,但我可能是错的。