C++ 单例职责
来源:互联网 发布:windows 预览计划 编辑:程序博客网 时间:2024/06/06 20:48
#include<iostream>using namespace std;class CPerson{private: //1.屏蔽所有类外可以定义对象方式:将构造和析构函数设置为私有。 CPerson() { } ~CPerson() { flag=false; //4.私有析构函数,防止类外修改flag值,影响单例职责 }private: static bool flag; //3.静态成员函数只能使用静态变量,并且在类外初始化public: static CPerson * CreateObject() //2.设置接口:因为要 不定义对象而去用类中成员函数,所以设置静态成员函数。返回一个类的对象 { if(flag==false) { CPerson *pCPerson=new CPerson; //随用随取,所以在堆区new对象 flag=true; return pCPerson; }else { return 0; } } static void DestroyObject(CPerson *pTemp) { delete pTemp; //5.自动执行析构函数,将flag设置为false pTemp=NULL; }};bool CPerson::flag=false; //类外初始化int main(){ CPerson *pTemp1=CPerson::CreateObject();//不定义对象而调用类中成员函数 CPerson::DestroyObject(pTemp1); //使用之后删除指针 CPerson *pTemp2=CPerson::CreateObject(); system("pause"); return 0;}
0 0
- C++ 单例职责
- 职责型模式-单例模式(Singleton)
- 单一职责原则(C++)
- C#单例模式
- C#-单例模式
- 单例模式(C++)
- 单例(c++)
- 【C++】单例模式
- Objective-C 单例
- [C++]单例模式
- 单例模式(C++)
- Objective-C单例
- 【C++】Chapter20:职责链模式
- Objective C--职责链模式
- Objective C 职责链模式
- 职责链模式(C++)
- C ++的单例模式
- 【C++】Chapter17:单例模式
- 基于basys2用verilog设计多功能数字钟(重写)
- Spring 自动装配
- DevExpress中GridView中导出选中的多行数据到Excel中
- 一些面试题
- spark ml 聚类源码笔记一
- C++ 单例职责
- 约瑟夫环
- 关于在Linux上安装solr遇到404的问题
- linux:解决SSH连接Linux超时自动断开
- 设计模式-原型模式
- leetcode 64. Minimum Path Sum
- WebRtc重要概念
- javaScript的调试(三)
- 装饰者模式