C++-工厂模式
1、目的
一般菜鸟程序员写一个类,用来创建各种类型的数据并返回,也就是工厂,往往通过定义一个枚举,根据外部设置的枚举返回不同数据。
但是这样每增加一个返回数据,就要增加枚举值,代码还会又臭又长。
我们通过函数来创建不同类型数据并返回,各数据有同一个基类。
2、代码-返回数据
//共同基类 class AAA { }; //实际类型XXX class XXX : public AAA { }; //实际类型YYY class YYY : public AAA { };
3、代码-简单工厂
class DtctrFactory { public: std::shared_ptr<AAA> createXXXData(void* addr, unsigned int count, ChanelType t) { return std::make_shared<XXX>(addr, count, t); } std::shared_ptr<AAA> createYYYData(void* addr, unsigned int count, ChanelType t) { return std::make_shared<YYY>(addr, count, t); } };
长风破浪会有时,直挂云帆济沧海!
可通过下方链接找到博主
https://www.cnblogs.com/judes/p/10875138.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
2020-02-25 Vector求最大值最小值