在设计模式里面最简单的要属单例模式了,我打算把GOF书上的设计模式都实践一遍,先给出单例模式的代码:
#pragma once
class Singleton{
private:
static Singleton* instance;
Singleton(){}
public:
static Singleton* Instance(){if(instance==NULL)instance=new Singleton();return instance;}
~Singleton(){if(instance!=NULL)delete instance;}
};
Singleton* Singleton::instance=NULL;
下面这是测试代码
#include <iostream>
#include <cstdlib>
#include "Singleton.h"
using namespace std;
int main(int argc , char **argv)
{
Singleton *p=Singleton::Instance();
Singleton *q=Singleton::Instance();
if(p==q)
printf("They are equal\n");
system("pause");
return EXIT_SUCCESS;
}