C++自用小轮子——单例模板
简介
记录开发时自用的小轮子:单例模板。
单例模板
提供了一个基于模板的单例模式的实现,代码如下:
1 |
|
使用方法
使用了奇异递归模板模式(Curiously Recurring Template Pattern, CRTP)。子类将自己作为模板参数传递给单例模板进行模板实例化,用做基类;同时在子类内部将基类声明为友元,这样才能在通过CSingleton
如此操作就可以使业务类(以CLogManager为例)具有单例属性,代码如下:
1 | class CLogManager final : public CSingleton<CLogManager> |
- 标题: C++自用小轮子——单例模板
- 作者: paw5zx
- 创建于 : 2024-04-03 15:10:33
- 更新于 : 2024-08-20 11:24:40
- 链接: https://paw5zx.github.io/cpp-development-components-singleton-CRTP/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论