最近在学习设计模式方面的知识,随笔整理。
单例模式:自己来判断是否已经实例化。保证一个类仅有一个实例,并提供一个访问它的全局访问点。
本质:①定义私有的本类静态对象、对象指针或对象引用;
②将该类的构造函数设为private,防止外部用new来实例化它;
③外部仅能通过公有静态成员函数获得唯一对象。
UML:
实现方式:懒汉式 饿汉式
懒汉式:当程序第一次访问单件模式实例时才进行创建。代码如下:
static Singleton *instance_s;
Singleton* Singleton::instance_s=0;Singleton* Singleton::Ins()//懒汉单例模式:即对象在函数首次被访问时创建。{if(instance_s==0){instance_s =