作者在这篇文章中,提供了一个通用的单例模板类。链接:一个通用的单例模板类
那么,如何使用这个模板实例化自己的单例类呢?下面是参考代码(假设这个模板类的头文件为 singletonbase.h):
#ifndef TEST_SINGLETON_H
#define TEST_SINGLETON_H
#include "singletonbase.h"
class CTestSingleton
{
REGISTER_SINGLETON(CTestSingleton)
public:
bool Init( );
void Deinit();
};
#endif //TEST_SINGLETON_H
那么,我们又如何使用这个单例类的对象呢?还是直接上代码吧。
CTestSingleton *g_pSingletonTest = GET_SINGLETON_INSTANCE(CTestSingleton);
当然释放这个单例对象的操作,就该是这样了:
RELEASE_SINGLETON_INSTANCE(CTestSingleton);