我有一个像这样的单例类:
我的类.h
class myClass
{
private:
static myClass *singleton;
myClass ( myClass const& );
myClass& operator = ( myClass const& );
myClass ( );
public:
static myClass* Instance ( );
~myClass ( );
};
我的类.cpp
myClass::myClass ( ) { };
myClass* myClass::singleton = NULL;
myClass* myClass::Instance ( )
{
if ( !singleton )
{
singleton = new myClass;
// Initialization
}
return singleton;
};
myClass::~myClass ( )
{
// Cleanup
};
现在我需要在返回对象实例之前进行一些初始化,并在析构函数中进行一些清理。由于 myClass* myClass::Instance ( ) 是一个静态函数,因此我无法从中访问成员变量,也无法将这些变量设为静态。
那么我该如何实现呢?