單例模式(餓漢式 執行緒安全 無記憶體洩露)

2021-08-25 08:55:17 字數 469 閱讀 6007

// singleton.cpp : 定義控制台應用程式的入口點。

//通過巢狀類實現析構

#include "stdafx.h"

#include

using namespace std;

class singleton  //將建構函式定義為私有的,避免直接建立外部物件。

~singleton()

static singleton *sig;  //宣告乙個私有的靜態資料成員來作為為乙個例項。

public:

static singleton *getinstance()  //宣告乙個static型別的介面獲得例項

class ggarbo}};

};singleton* singleton::sig = new singleton;  //在類外進行例項的定義和初始化

int _tmain(int argc, _tchar* argv)

單例模式與執行緒安全單例模式(懶漢 餓漢)

直接就可以在靜態區初始化instance,然後通過getinstance返回,這種就被稱為餓漢式單例類。也有些寫法是在getinstance中new instance然後返回,這種就被稱為懶漢式單例類,但這涉及到第一次getinstance的乙個判斷問題。單例大約有兩種實現方法 懶漢與餓漢。懶漢 故...

《餓漢式單例模式》

設計要點 1 私有建構函式 2 設定本型別的靜態變數並設為私有屬性 3 提供靜態成員函式,作為獲取單例的介面 如下 class singelton static singelton signelton public static singelton getsingelton 獲取單例介面 void ...

C 單例模式簡複習 餓漢式,懶漢式執行緒安全

單例模式,顧名思義,即乙個類只有乙個例項物件。餓漢式寫法全域性只有乙個已經建立好的靜態物件,每次要用時就返回這個物件的引用就行,餓漢式在多執行緒裡面同時getinstance 去獲取這個物件的時候,是不存在安全問題的,餓漢式寫法如下 include using namespace std class...