设计模式
文章平均质量分 84
小喻同学i
这个作者很懒,什么都没留下…
展开
-
框架中的单例模式
上一节我们介绍了本节来讨论下,在框架代码中,怎样设计单例模式考虑这种场景:框架的开发者写了一个类Config用来管理整个程序运行周期中的配置文件,整个程序中应该只有一个配置文件类,所以站在框架开发者的角度,这个类就应该是全局单例;(这是一个典型的单例模式应用场景,单例模式还有一些其他的应用场景,比如:日志记录,线程池管理等)框架开发者为这个Config类提供了很多通用函数,也有一部分虚函数(站在框架设计者的角度,我们只能尽可能的考虑更多场景,提供一系列的通用函数;但是并不知道这个Config。原创 2024-04-20 13:50:04 · 1201 阅读 · 0 评论 -
单例模式模板
与之前不同的是,将创建对象的限制放在了用户类(即将构造函数设置为私有),构造函数私有化后,单例模板也无法创建对象,于是,将单例模板作为友元类, 模板类才能访问到用户类的构造函数。放开模板限制,在此不再删除取址操作(会影响返回对象的引用),取消模板类构造函数的私有化,作为基类,析构函数标记为virtual;原创 2024-03-11 13:54:13 · 524 阅读 · 1 评论 -
自注册工厂模式
去写,框架的开发者更希望应用程序的开发者只关心自己的业务逻辑,而不需要去关心其他的因素,其他的处理框架可以帮应用程序的开发者处理好,这时候,我们希望应用程序的开发者将自己继承Sharp类写的具体图形类对象,注册到工厂中去,而又可以将。REGISTER_SHARP宏 是用来创建一个静态的 SharpRegister模板类对象,我们为了让这些静态类对象的对象名不重复,所以才有 CREATE_SHARP_NAME宏,用来生成对象名。类型的指针,并注册到工厂类中,在使用时候,我们仅需要创建。原创 2024-01-09 19:04:15 · 867 阅读 · 0 评论 -
设计模式——模板方法
模板方法原创 2023-07-05 00:25:10 · 41 阅读 · 0 评论