c#中的委托
引言:c#中的委托着实让我迷惑(我是位初学者),在不同的c#书籍中,还译为代理、委派等,经反复查阅资料和自己动手编写代码,才稍稍理出点头绪。
c#中的委托类似于c或c++中的函数指针,但两者有本质区别:c或c++不是类型安全的,但c#中的委托是面向对象的,而且是类型安全的。
从技术角度来讲,委托是一个引用类型,用来封装带有特定签名和返回类型的方法。
1、声明委托
c#使用关键字delegate来声明委托类型:
[访问修饰符] delegate 结果类型 委托标识符([形参列表]);
委托类型可以在声明类的任何地方声明。
2、实例化委托
委托使用new运算符来实例化。
新创建的委托实例所引用的对象为以下之一:
⑴委托创建表达式中引用的静态方法