// Singleton.cpp : 定义控制台应用程序的入口点。
//通过嵌套类实现析构
#include "stdafx.h"
#include <iostream>
using namespace std;
class Singleton{
private:
Singleton(){} //将构造函数定义为私有的,避免直接创建外部对象。
~Singleton()
{
cout<<"delete success!";
system("Pause");
//delete sig;
}
static Singleton *sig; //声明一个私有的静态数据成员来作为为一个实例。
public:
static Singleton *getInstance() //声明一个static类型的接口获得实例
{
return sig;
}
class GGarbo
{
public:
~GGarbo()
{
if(Singleton::sig!=NULL)
{
cout<<"delete sig success!";
system("Pause");
delete Singleton::sig;
Singleton::sig = NULL;
}
}
};
};
Singleton* Singleton::sig = ne