定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点。
图示:
特点:(1)一个类只有一个实例;
(2)该类能自行创建这个实例;
(3)该类能向整个系统返回这个实例。
实现:具有静态私有对象,私有的构造函数和公有的静态函数用于创建静态私有对象。
class Singleton
{
private:
static Singleton instance;//静态成员
private:
Singleton(){}//私有构造方法
public:
static Singleton Instance()
{
if(instance == null)//判断是否为第一次调用
{
instance = Singleton();
}
return instance;
}
}
优点:确保所以对象都访问唯一实例,多个对象共享一个实例。
缺点:不能解决删除单个对象问题,如果一个对象删除了实例,其他对象拥有该实例的引用,那么就会出现悬浮引用。

2433

被折叠的 条评论
为什么被折叠?



