题目
设计一个类,只能生成该类的一个实例
解题思路
用静态构造函数调用私有变量,实现一个函数只能调用一次。
#include<iostream>
using namespace std;
class CSingleton{
private:
//1,构造函数是私有的,不能通过构造函数创建该类实例
CSingleton(){}
//2,静态成员变量且私有,指向一个CSinglrton实例
//同一时间只存在一个这个变量,
static CSingleton *m_pInstance;
public:
int number;
//通过函数创建实例且唯一
static CSingleton *GetInstance()
{
if(m_pInstance == NULL)
{
m_pInstance = new CSingleton;
}
return m_pInstance;
}
void set_number()
{
this->number ++;
}
void print_number()
{
cout << this->number << endl;
}
};
//4,初始化类的静态成员变量
CSingleton *CSingleton::m_pInstance = NULL;














网友评论