码迷,mamicode.com
首页 > 其他好文 > 详细

关于callback机制的理解

时间:2020-03-06 10:28:04      阅读:51      评论:0      收藏:0      [点我收藏+]

标签:重绘   影响   的区别   减少代码冗余   就是   特殊   func   cal   自动调用   

funcA(funcB), 这里的funcA可能长这样:

funcA(callback) {
    ...
    callback();
    ...
}

可以理解为调用了funcA,再在里面调用了funcB(当然特殊情况就是callback在第一行,但也不影响理解,因为还是先进行了调用funcA这个操作),则称为回调(回过头来调用)。

和直接调用的区别:个人理解是,如果funcA中有时需要调用funcB,有时需要调用funcC,写成callback形式就不用写一个funcA1,再写一个funcA2分别调用了,减少代码冗余。

在封装性上,funcA的调用者不需要管funcB什么时候调用,只知道funcB会被调用,至于什么时候合适调用funcB完全由funcA的代码决定。比如glDisplay(mydisplay),移动窗口,遮挡窗口都会导致重绘,情况复杂多变,但是调用者只须把重绘函数传进去就行,由glDisplay自动调用。

关于callback机制的理解

标签:重绘   影响   的区别   减少代码冗余   就是   特殊   func   cal   自动调用   

原文地址:https://www.cnblogs.com/eddywei/p/12424961.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!