C# System.Delegate.Combine

本文关键字:Combine Delegate System | 更新日期: 2023-09-27 18:01:29

我对System.Delegate((中提供的静态Combine((有点困惑

此方法返回System.Delegate类型,其目的是组合多个委托的调用列表。

但是,如果一个委托应该引用一个方法,而多播委托应该引用多个方法,那么Combine的返回类型如何被证明只是System.delegate?

我想我错过了什么。

有人能帮忙吗。

谢谢。

C# System.Delegate.Combine

所有委托都具有多播功能。考虑Delegate.GetInvocationList

这有点蒙在鼓里,但多播委派继承自委派。。。所以,当它返回一个Delegate类型的对象时,您可以将它强制转换为多播委托。。。。

System.Delegate是抽象的,因此从来没有返回System.Delegade的实例,只有从System.MulticastDelegate派生的具体类型((的实例。据我所知,没有一个类型是只能引用一个方法的Delegate。

希望这能有所帮助。