C++单例模式
来源:互联网 发布:淘宝客服怎么更改 编辑:程序博客网 时间:2024/06/03 20:30
设计模式是编程的重点,往往在面试时都会考查,而单例模式是最为简单、最为常见、也最该掌握的模式。所以面试时对设计模式的考查考的最多的就是单例模式。
其中,Singleton类型的构造函数必须是protected的,保证该类型不可被实例化,静态成员函数Instance则用来实例化该类型,因为该函数是静态,所以每次调用都是同一个实例,这就保证了Singleton类型只能被实例化一次。
下面我们就来看看单例模式如何实现(C++代码):
#include<iostream>using namespace std;class Singleton {public:static Singleton* Instance();protected:Singleton();private:static Singleton* _instance; };Singleton* Singleton::_instance=0;Singleton::Singleton(){cout<<"Singleton..."<<endl;};Singleton*Singleton::Instance(){if (_instance==0) {_instance=new Singleton();}return _instance;}int main(int argc,char* argv[]){Singleton* sgn=Singleton::Instance();return 0;}
其中,Singleton类型的构造函数必须是protected的,保证该类型不可被实例化,静态成员函数Instance则用来实例化该类型,因为该函数是静态,所以每次调用都是同一个实例,这就保证了Singleton类型只能被实例化一次。
0 0
- C#单例模式
- C#-单例模式
- 单例模式(C++)
- 【C++】单例模式
- [C++]单例模式
- 单例模式(C++)
- C ++的单例模式
- 【C++】Chapter17:单例模式
- Object-c单例模式
- Objectove-c单例模式
- Objective C--单例模式
- Objective C--单例模式
- Objective C 单例模式
- Objective C--单例模式
- 单例模式(C#)
- 单例模式(C#)
- object-c 单例模式
- c++-单例模式Singleton
- 64位驱动签名工具64Signer
- Hadoop集群应用于大数据分析优势和挑战
- jQuery Easy UI LinkButton(按钮)组件
- skynet源码学习 - logger服务的工作原理
- JAVA 实现冒泡排序
- C++单例模式
- JS的Document属性和方法
- c语言 冒泡排序算法
- Java基础-环境变量
- hdu1874
- C++类构造函数初始化列表
- HTML经典试题
- 并发 并行 同步 异步 多线程的区别
- hdu 4031 线段树