1. 程式人生 > >C++類的靜態變數的初始化

C++類的靜態變數的初始化

#include <iostream>
using namespace std;

/************************************************************************/
/* 單例模式:保證一個類僅有一個例項                                     */
/************************************************************************/

class Singleton
{
private:
	static Singleton* instance;
	Singleton(){
    }
public:
	static Singleton* GetInstace()
	{
		if (NULL == instance)
		{
			instance = new Singleton();
		}
        return instance;
	}
};
Singleton* Singleton::instance = Singleton::GetInstace();

void main()
{
   Singleton* instance1 = Singleton::GetInstace();
   Singleton* instance2 = Singleton::GetInstace();
   if (instance1 == instance2)
   {
       cout << "同一個例項" << endl;
   }
   system("Pause");
}