c#中委托和直接函数调用用什么区别,好处和目的在哪?

以一个例子说明:
//定义原形
public delegate void MessageEventHandler(object sender, EventArgs e);
public event MessageEventHandler MessageReceived;

//注册事件
MessageReceived += new MessageEventHandler(HandleIt);

//使用时
MessageReceived(this,aaa) //aaa是一个EventArgs对象


//定义的处理方法
private void HandleIt(object sender, EventArgs e)
{
.....
}

我想问,这样绕了一圈,本质上不还是在使用时调用一下HandleIt方法么?那么委派的优点究竟在哪里呢?到底有什么好处呢?和直接用函数调用区别在哪里呢?
请高人解答。
请给我个直接明了的回答,如果能再结合个例子说明也好,谢谢。

posted on 2008-10-24 01:12  劲草  阅读(3773)  评论(26编辑  收藏  举报

导航