单例类模板编写
2015-06-10 10:23
176 查看
template <typename T> class Singleton { protected: static T* ms_singleton; public: Singleton() { assert(!ms_singleton); ms_singleton = static_cast<T*>(this); } ~Singleton() { assert(ms_singleton); ms_singleton = NULL; } inline static T& getSingleton() { assert(ms_singleton); return (*ms_singleton); } inline static T* getSingletonPtr() { return ms_singleton; } };
编写单例类只需要继承即可
例:class xx : public Singleton < xx >
改进:ms_singleton为空,new
相关文章推荐
- android 代码实现控件之间的间距
- [Android]在代码里运行另一个程序的方法
- 肯特·贝克:改变人生的代码整理魔法
- 网页恶意代码的预防
- 高手写的Tracer-Flash代码调试类代码下载
- CSS代码缩写技巧
- 非主流Q-zOne代码代码搜集第1/2页
- CreateWeb.vbs 代码
- Lua中编译执行代码相关的函数详解
- 更有效率的css代码编写第1/3页
- 代码中到底应不应当写注释?
- SQL语言查询基础:连接查询 联合查询 代码
- 论坛头像随机变换代码
- .NET 常用功能和代码小结
- C#实现压缩HTML代码的方法
- asp编程中常用的javascript辅助代码第1/2页
- C#超实用代码段合集
- Javascript代码在页面加载时的执行顺序介绍
- JS实现图片无间断滚动代码汇总
- 我的论坛源代码(二)