定义delegate:
委托的定义不带函数体,且要使用delegate关键字。委托定义需要指明委托名称以及一个返回类型和一个参数列表,委托的定义可以有返回值也可以没有返回值,
//定义委托
private delegate void call();
使用delegate
声明委托
//声明委托
call call=Callback;
声明委托并且将函数引用赋给委托变量(Callback为函数名),委托参数列表和返回值类型要与此函数相同
实现委托
//实现委托
call();
实现委托时只需要直接使用声明的委托名,委托将参数列表传给其他函数
注意事项:
委托可以调用多个方法,即一个委托变量可以引用多个函数,称为广播
可以使用+=和-=运算符实现方法的增加和减少
无返回值的委托,引用了多少个方法就会执行多少个方法。有返回值的委托同样会执行多个引用的方法,但返回的值是最后一个方法的返回值