就像string一样,delegate也是一种类型。
string str;
delegat void func(string str);
不过委托的用法比较特殊.
在我们定义一个委托实例的时候:
1
2
3
4
5
6
7
8
9
|
public
delegate
void
GreetingDelegate(
string
name);
// 当编译器遇到这段代码的时候,会生成下面这样一个完整的类:
public
sealed
class
GreetingDelegate:System.MulticastDelegate
{
public
GreetingDelegate(
object
@
object
, IntPtr method);
public
virtual
IAsyncResult BeginInvoke(
string
name, AsyncCallback callback,
object
@
object
);
public
virtual
void
EndInvoke(IAsyncResult result);
public
virtual
void
Invoke(
string
name);
}
|