class A
{
private:
//构造函数私有化;
A();
public:
//静态对外接口,提供获取对象的接口
static A * Instance();
private:
//释放
class GC
{
public:
~GC() { delete A::Instance(); }
};
//静态私有
static A * a;
};
A * A::Instance()
{
if (!a)
{
a = new A();
}
return a;
}