单例模式
来源:互联网 发布:爱淘宝1元红包口令 编辑:程序博客网 时间:2024/05/03 19:30
单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点
第一个版本:
#include <iostream>using namespace std;class Singleton{ static Singleton s; //可以在类定义中声明类自身的对象的引用或者指向该类的对象,也可以使用static修饰该对象 int i; Singleton(int x):i(x){}; Singleton(const Singleton&);//不允许拷贝 Singleton& operator=(Singleton&);//不允许赋值public:static Singleton& instance(){return s;}int getValue(){return i;}void setValue(int x){i=x;}};Singleton Singleton::s(88);int main(){Singleton& s=Singleton::instance();cout<<s.getValue()<<endl;Singleton& s2=Singleton::instance();s2.setValue(9);cout<<s.getValue()<<endl;//Singleton s3=Singleton::instance(); //error 声明拷贝构造函数为私有,不允许拷贝getchar();return 0;}
#include <iostream>using namespace std;class Singleton{int i;Singleton(int x):i(x){}; Singleton(const Singleton&);//不允许拷贝Singleton& operator=(Singleton&);//不允许赋值public:static Singleton& instance(){ static Singleton s(88); //成员函数内部的静态对象创建实现单例模式 return s;}int getValue(){return i;}void setValue(int x){i=x;}};int main(){Singleton& s=Singleton::instance();cout<<s.getValue()<<endl;Singleton& s2=Singleton::instance();s2.setValue(9);cout<<s.getValue()<<endl;//Singleton s3=Singleton::instance(); //error 声明拷贝构造函数为私有,不允许拷贝getchar();return 0;}
1 0
- 单例、单例模式
- 单例模式-多线程单例模式
- 单件模式(单例模式)
- 设计模式------单例模式
- 设计模式------单例模式
- 设计模式-单例模式
- 设计模式 - 单例模式
- 设计模式---单例模式
- 设计模式---单例模式
- PHP模式-单例模式
- 【设计模式】单例模式
- 设计模式-单例模式
- 设计模式----单例模式
- 设计模式--单例模式
- 设计模式-单例模式
- 单例模式(单子模式)
- 设计模式-单例模式
- [设计模式] 单例模式
- android-----AsyncTask源码分析
- opengl纹理单元
- 实现CSS等分布局的4种方式
- ABAQUS中对单个网格进行材料设定
- 字符串处理两题(hdu2026/hdu2027)
- 单例模式
- Spring 4 MVC @RestController 注解实现REST Service(带源码)
- [LeetCode]049-Group Anagrams
- Android 内功心法(1.2.1)——android常用设计模式之工厂模式后续抽象工厂模式
- ActionBar
- HDU 1171 Big Event in HDU
- 深入理解Hibernate持久化3种状态
- 哈希算法
- jQuery 基础DOM和CSS操作