# include <iostream>
using namespace std;
class Egg // 这个就是单例模式,只有一个对象,单例设计模式
{
private:
static Egg e; // 只有这么一个对象,
int i;
Egg(int ii) : i(ii){}
Egg(const Egg&); // 这个做成私有的防止copy 构造函数,
public:
static Egg* instance() { return &e; }
int val() const { return i; }
};
Egg Egg::e(78);
int main()
{
Egg* e = Egg::instance(); // 输出的是78,
Egg* e2 = Egg::instance(); // 输出的是78,
cout << e->val() << endl; // 输出的是78,
cout << e2->val() << endl; // 输出的是78,
cout << Egg::instance()->val() << endl; // 输出的是78,
return 0;
}
单例设计模式
最新推荐文章于 2022-04-17 22:22:26 发布