把函数"封装"到结构体里的好处?

2019-12-22 13:50发布

我看很多人这么用,可不知道为什么,网上搜了,文章都是说可以这么用以及如何这么用,但是没有说明其中思想。

我只能猜是因为:1,封装起来后使写程序的人思路更清晰;2,不同的过程需要同一个函数,结构体可以迅速“复制”多个同样的函数?但是想想又不对,请高人解答。我觉得结构体里有变量、参数就足够方便了,想不出有什么必要把函数也放进去?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
53条回答
习学发开
1楼-- · 2019-12-23 20:01
error_dan 发表于 2014-3-25 10:40
建议先看一下本坛 傻孩子 大师的一系列文字,深入学习的话,高焕堂老师有本OOPC的书非常不错.

我个人的一点 ...

又是dandan老师,谢谢你的指点!

虽然你说的我似懂非懂的,但是我会好好研究的。

貌似封装的好处和集成电路的思想差不多,我只管输入输出,里面怎么回事我不用在乎了。
netawater
2楼-- · 2019-12-23 23:47
函数作为第一公民能当做参数传递,好处非常大。
笑笑我笑了
3楼-- · 2019-12-24 05:00
 精彩回答 2  元偷偷看……
wye11083
4楼-- · 2019-12-24 08:33
13hoop 发表于 2014-3-25 08:42
不明觉厉  但隐隐觉得是因为结构体内存分配和引用方面便利

C库经常使用这种方式,目的是封装函数,以及动态选择函数。比如你程序有一份支持SSE2,另一份仅支持基本C,那么你要把函数封装起来,程序启动时检测CPUID,并选择合适的处理函数。
596142041
5楼-- · 2019-12-24 10:14
这样真的很好,楼主可以试一下
mmiker
6楼-- · 2019-12-24 10:58
看下linux的驱动源码就能理解这样的好处了。

一周热门 更多>