C语言设计模式使用场景和区别

文章探讨了C语言中几种重要的设计模式,包括工厂模式用于模块化和函数指针驱动,生成器模式处理有限的组合,桥接模式适用于步骤自由组合,以及如何通过函数注册实现解耦。状态模式和组合模式也在讨论范围内,分别涉及对象状态管理和树形结构的问题解决。

1、工厂模式使用场景

1.1、初始化可以分为不同模块,每个模块可以使用函数指针列表(驱动表)

1.2、不同模式下流程一样,只是驱动函数不一样,不如设置环回

C语言设计模式-工厂模式(函数指针 驱动表)_wangxieliang007的博客-优快云博客

2、生成器模式

每个步骤都有M种,一共有N种步骤,但是不可以只有组合,只有M种组合,建议使用生成器模式

C语言设计模式-生成器模式_wangxieliang007的博客-优快云博客

3、桥接模式的区别

个人觉得如果是每个步骤都有M种,一共有N种步骤,每个步骤可以自由组合,一共有MXN种组合建议使用桥接模式--其实每个步骤感觉可以使用工厂模式

C语言设计模式-桥接模式_wangxieliang007的博客-优快云博客

3、模式解耦使用函数注册回调

C语言设计模式--函数注册回调(不同模块之间解耦)_wangxieliang007的博客-优快云博客

4、状态模式

设计模式_状态模式_C语言实现_wangxieliang007的博客-优快云博客

二维数组表驱动法的实现思路可以关注下,其实感觉是就是工厂模式

5、组合模式

5.1 将问题规划为树形结构

5.2 步骤之间有依赖,可以考虑

https://blog.youkuaiyun.com/wangxieliang007/article/details/130125556

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值