0
点赞
收藏
分享

微信扫一扫

【设计模式20/21】迭代器模式/单例模式


迭代器模式

【设计模式20/21】迭代器模式/单例模式_#include

单例模式

基本概念

【设计模式20/21】迭代器模式/单例模式_ios_02

具体案例

【设计模式20/21】迭代器模式/单例模式_初始化_03

#include<iostream>
#include<vector>
#include<string>
#include<algorithm>
#include <crtdbg.h>   
#include<unordered_map>

using namespace std;
class Singleton {
private:
	static Singleton* instance;
	Singleton() {

	}
public:
	static Singleton* GetInstance() {
		if (instance == nullptr) {
			instance = new Singleton();
		}
		return instance;
	}
};

Singleton* Singleton::instance = nullptr;//必须在类外进行初始化

int main(int argc, char** argv)
{

	Singleton* s1 = Singleton::GetInstance();
	Singleton* s2 = Singleton::GetInstance();

	if (s1 == s2) {
		cout << "两个对象是相同的实例" << endl;
	}

	return 0;
}


举报

相关推荐

0 条评论