2B4G委托是多路广播的,因此2B4G可以将两个或多个非委托实例组合到一起,构成委托链。所谓委托链就是被委托的的方法用链表的形式连接在一起。
关于委托链的形成在C#中使用二元+和+=运算符来来组合委托,使用-或-=运算符来从委托链中移除一个委托。
当组合连个委托或者从一个委托链中移除一个委托实例时,将产生一个新的委托。该委托有自己的调用列表,被组合或移除的委托的调用列表将保持不变、
如果一个委托实例的列表中包含多个方法,那么调用这样的委托实例时将会按照调用列表的顺序执行方法。如果参数含引用或输出参数(ref或out参数),那么每个方法都
将使用对同一变量的引用,因此,如果调用列表中的某个方法对该变量进行修改之后的所有委托方法豆浆使用修改过的变量作为参数。如果委托调用包含引用或输出参数或
一个返回值,那么该返回值有调用列表中的最后一个方法所决定。
那就看一个委托链的简单实例吧!