不明白委托的好处,还不如直接调用函数,搞的那么麻烦!?例如 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; }
{
GetAString firstString = new GetAString(test2);
string aa = firstString("123"); //这里我还不如直接调用函数test2(),干嘛还委托,感觉多余!!我想来想去
} 估计是为了在开发中每个人可以给函数test2()定义不同的名字,然后调用. private string test2(string ab)
{
return ab; }
解决方案 »
- 反编译软件
- 使用WMI (Win32_NetworkAdapterConfiguration)获取subnet mask的问题
- 在C#.net中web页面上没有命名空间AjaxPro怎么用??
- 关于net程序并发数的问题
- 求教关于pictureBox中的Image的一些问题!
- 求:遍历树,把相应节点删除,有可能是叶节点,也有可能是其他节点
- Socket通信寻求解决办法
- 关于filesystemwatcher用来防止文件被删除或被拷贝有方法吗,各位赐教。
- 请大家推荐一下COM+组件开发较好的资料!
- 没分了,再提一个问题,有分后补上
- c# 类相等的问题
- C# zedgraph关闭再打开 属性为null
特别是学了LINQ,就能理解委托作为参数好处。
你也可以这样说。这大概很符合你现在的学习层面。当你作为一个稍有软件设计者,就会遇到“依赖倒置”的问题。例如你不知道一个服务组件可能如何具体扩展,但是需要提供技术支持,那么就可以在组件流程中的一些扩展点抛出事件,或者显式的委托回调。你所使用的任何一种通用控件都有这类机制。而将来如果多线程编程,或者现在的所谓ajax办成,更是处处都需要为后续操作预先注册委托回调方法。
http://www.cnblogs.com/jimmyzhang/archive/2007/09/23/903360.html