设计模式详解一:单例模式的两种实现方式

程序设计过程中,经常会听到各种各样的设计模式,其中单例模式是最简单,也是最经常使用的一种模式,它的目的是创建一个全局的唯一对象,因此,本文说明如何实现单例模式,以便运用到程序的设计过程中!

一、第一种单例模式的实现方式

1、首先定义如下的头文件,将构造函数设置为private,并定义一个Single的静态指针变量

2、定义完成头文件之后,进行具体的实现,主要是实现GetInstance函数,该函数实现的逻辑:如果静态指针变量为空,那么创建,否则直接返回静态指针变量,实现对象的唯一性

3、完成代码的实现,接下来进行测试验证,主函数输入如下信息

4、最后点击运行,可以看到如下的信息,能够成功调用函数

二、第二种单例模式的实现方式

1、 定义如下的头文件,将构造函数设置为private

2、定义完成头文件之后,进行具体的实现,主要是实现GetInstance函数,该函数实现的逻辑:直接创建静态对象,每次用户调用返回该对象

3、完成代码编写后进行测试验证,主程序输入如下代码信息

4、最后点击运行,可以看到如下的信息,能够成功调用函数

三、 总结两种设计模式

从上面实现两种实现单例的过程中,可以发现单例模式的特点就是将构造函数设置为private,并且提供一个对外获取对象的接口,该接口的功能是每次先判断对象是否创建,如果没有创建,那么创建对象,然后返回,如果对象已经创建那么直接返回该对象。而两种单例模式的区别是,第一种是返回对象的指针,第二种是返回对象的引用。