C++语言 实现类对象的单模式创建

来源:互联网 发布:去除ghost预装软件 编辑:程序博客网 时间:2024/06/07 11:22
//C++语言 实现类对象的单模式创建//对于单例模式而言,既然要保证类有且仅有一个实例,就需要其他的类不能实例化该类.//因此,需要将构造方法设置成私有的,即使用private关键字修饰.//同时,在类中提供一个静态方法,该方法的返回值是该类的一个实例.http://pythonschool.com/python/102.html#include "stdafx.h"#include "iostream.h"class Emperor{private:    static Emperor *pEmperor;    static int count;    Emperor()    {        count++;    }public:     static Emperor getInstance()    {        if(pEmperor == NULL)        {            pEmperor = new Emperor();        }        return *pEmperor;    }    void getName()    {        cout << "我是第" << count << "次创建的实例" << endl;    }};Emperor * Emperor::pEmperor = NULL;int Emperor::count = 0;int main(int argc, char* argv[]){    //printf("Hello World!\n");    cout << "创建1对象:" << endl;    Emperor emperor1 = Emperor::getInstance();    emperor1.getName();    cout << "创建2对象:" << endl;    Emperor emperor2 = Emperor::getInstance();    emperor2.getName();    emperor2.getInstance();    cout << "创建3对象:" << endl;    Emperor emperor3 = Emperor::getInstance();    emperor3.getName();    emperor3.getInstance();    return 0;}
原创粉丝点击