インスタンスを生成してますが、削除方法がどうやったらいいのかわかりません
通常だったら、デストラクタに delete _instance とすべきなのでしょうか?
どこでdelete _instance とすれば適切でしょうか
#include <stdio.h>
class Singleton
{
private:
static Singleton* _instance;
protected:
Singleton();
public:
static Singleton* Instance();
void TestShow();
};
//------------------------------------------------------
Singleton* Singleton::_instance = 0;
Singleton* Singleton::Instance() {
if( _instance == 0 ) {
_instance = new Singleton;
printf( "create instance.\n" );
}
return _instance;
}
Singleton::Singleton(){
}
void Singleton::TestShow(){
printf( "TestShow called.\n" );
}
//------------------------------------------------------
int main()
{
Singleton::Instance()->TestShow();
return 0;
}