不明白委托的好处,还不如直接调用函数,搞的那么麻烦!?例如 public delegate string GetAString(string a);  public void test()
{
     GetAString firstString = new GetAString(test2);
      string aa = firstString("123"); //这里我还不如直接调用函数test2(),干嘛还委托,感觉多余!!我想来想去
}                                      估计是为了在开发中每个人可以给函数test2()定义不同的名字,然后调用.    private string test2(string ab)
      {
               return ab;      }

解决方案 »

  1.   


    特别是学了LINQ,就能理解委托作为参数好处。
      

  2.   


    你也可以这样说。这大概很符合你现在的学习层面。当你作为一个稍有软件设计者,就会遇到“依赖倒置”的问题。例如你不知道一个服务组件可能如何具体扩展,但是需要提供技术支持,那么就可以在组件流程中的一些扩展点抛出事件,或者显式的委托回调。你所使用的任何一种通用控件都有这类机制。而将来如果多线程编程,或者现在的所谓ajax办成,更是处处都需要为后续操作预先注册委托回调方法。
      

  3.   

    你也可以这样说。这大概很符合你现在的学习层面。当你作为一个软件设计者,就会遇到“依赖倒置”的问题。例如你不知道一个服务组件可能如何具体扩展,但是需要提供技术支持,那么就可以在组件流程中的一些扩展点抛出事件,或者显式的委托回调。你所使用的任何一种通用控件都有这类机制。而将来如果多线程编程,或者现在的所谓ajax编程,更是处处都需要为后续操作预先注册委托回调方法。
      

  4.   

    推荐文章:
    http://www.cnblogs.com/jimmyzhang/archive/2007/09/23/903360.html