关于委托的思考(待完善)

基本写法

public delegate void printString(string s);
printString ps1 = new printString(WriteToScreen);
printString ps2 = new printString(WriteToFile);

1.能像调用公式那样调用方法;但感觉多此一举,不知道什么时候适合
2.多播,或许有一点点用处吧;在做比较细致的拆分的时候或许能用到。
3.按照别人的说法:委托实际上 就是一个 函数 格式的 映射。(c++里面叫 函数指针 类似),你并不知道你需要传入的函数的名称,根据微软的说法是经过包装的指针,安全、高效。
这个有点说服力,在接口对接口的时候,桥方法不写了,让委托来弄。
4.小程序确实体会不到委托的好处,反而会使程序变得很别扭,但是当程序到达一定复杂程度后,就能体现出来了,以后lz会体会到的。
不过在有些地方是必须使用委托的,比如线程间操作UI控件,异步的回调函数等等。
这个评论有参考价值。
5.C#里没有指针(不考虑unsafe),delegate就相当于函数指针。
6.委托是触发,比如在错误处理中,你当然可以用try…catch来处理,但并不能保证捕获所有的错误.你也不知道错误什么时候发生,所以你可以用委托来处理。
委托用来捕捉错误或许不错。
7.C#设计机制,有一部分线程安全的因素。

看了一圈并不能完全明白委托的用途:

1.查看高级函数看看委托的具体应用。
2.学习事件机制,来研究委托。
3.研究c#的基本原理,重新考虑委托的意义。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值