#include <iostream>
class singleClass
{
public:
static singleClass* getinstanse()
{
return instance;
}
static int a;
private:
static singleClass* instance;
singleClass* instance2;
singleClass(){};
};
// 在类外初始化静态成员变量时必须在前面加上他类型
// 静态成员变量必须在类中声明,在类外定义。
singleClass* singleClass::instance = new singleClass; // 这里能用new的原因是:instance是类的成员,可以用new来初始化,因为有::作用域还是在类中
int singleClass::a = 1;
int main()
{
singleClass* singlep1 = singleClass::getinstanse();
return 0;
}
学习单例模式遇到的问题
最新推荐文章于 2024-10-10 16:23:05 发布
本文介绍了C++中的单例模式实现,强调了静态成员变量的使用,包括在类外的初始化以及new运算符的应用。通过实例代码展示了如何在`main`函数中获取单例对象。
摘要由CSDN通过智能技术生成