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

2019-12-22 13:50发布

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

我只能猜是因为:1,封装起来后使写程序的人思路更清晰;2,不同的过程需要同一个函数,结构体可以迅速“复制”多个同样的函数?但是想想又不对,请高人解答。我觉得结构体里有变量、参数就足够方便了,想不出有什么必要把函数也放进去?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
54条回答
mhw
2019-12-26 17:14
以前关注过,现在不玩了……
小程序写多了,就跟吃饭喝水一样,自己趁手、舒服就行了,没必要麻烦的……面向对象不是任何地方都需要的:

我.喝水();
看起来简单,一行搞定,进去看看……里面还有喝水.厨房,喝水.茶,喝水.咖啡……厨房.插头,厨房.电水壶,厨房.杯子……茶.铁观音,茶.普洱……咖啡.雀巢,咖啡.蓝山……

所以我现在的做法就是先把项目做好整体规划,然后拷贝个模板,初始化代码一个函数里全搞定,方便检查,中断函数改一下,应用层也有不少跟硬件相关的,像读写IO口之类的顶多用宏封装一下……看似移植性比较差,但是现实中又有哪位尝试过把自己产品瞬间更换N种MCU……
100KB左右的bin(常量很少),尝试过在TI和ST的M3,以及芯唐的M0之间移植,速度还是很快的,摸索完新MCU的外设操作后,软件的移植也就两三天可以搞定。

一周热门 更多>