首先就是防止类被实例化多次,将构造函数声明为私有的。
而又要使用类的函数就要声明类的静态指针了,然后在一个静态函数中返回类的实例。具体代码如下:
class Test
{
private:
static Test * test;
... // 其他的成员变量
Test(){};
public:
~Test(){};
... // 其他的成员函数
static Test *getInstance()
{
if (test == NULL)
{
test = new Test();
}
return test;
}
}
使用方法:
Test::getInstance()->...