单实例类的设计_单厂课程设计实例

2020-02-28 其他范文 下载本文

单实例类的设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“单厂课程设计实例”。

单实例类要求类只能有一个对象。这种类主要用来替代全局变量。例如一台电脑只有一个键盘,一个鼠标等等“有且只有一个的问题”。

我们可以将构造函数设置为私有的,这样就让类没有对象了。那么怎么让类“有且只有一个对象”呢?

使用静态函数,在这个静态函数中新建类的对象,如果已经新建了类的对象就不再新建,如果还没有新建类的对象那么就新建一个类的对象。这样一来,当我们需要使用这个类的使用就调用这个静态函数就可以了。无论你调用多少次,这个类都只用一个对象实例的。

那么为什么要使用静态函数呢?静态函数可以直接用类型调用,避免了建立类的对象后才能调用的弊病了。

以下是一个单实例类的示例代码:

//////////////////////////////////////////////////////////////////////////

#include

using namespace std;

cla A

{

public:

static A* GetInstance();

private:

};

A *A::m_pInstance=NULL;

A::A(){

}

A* A::GetInstance(){ A();static A *m_pInstance;

static bool isCreate=false;if(isCreate==false){isCreate=true;m_pInstance=new A();//将新建对象的任务交给函数处理了,而不是在定义的时候就静态的新建好了

}

void main()

{

A *p=A::GetInstance();//用动态的方式新建类的对象,保证了有且只有一}//保证每次返回同一个地址 return m_pInstance;个的问题了

}

//程序中讲static运用的十分的精妙

//////////////////////////////////////////////////////////////////////////

对于上诉类的设计方法需要好好揣摩,还要复习static关键字的特性。

《单实例类的设计.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
单实例类的设计
点击下载文档
相关专题 单厂课程设计实例 设计 实例 单厂课程设计实例 设计 实例
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文