#include
"pch.h"
#include
using namespace std;
//實現單例步驟:
//1、建構函式私有化。
//2、增加靜態私有當前指標變數
//3、提供靜態對外介面,可以讓使用者獲得單例
class a
public:
//外部訪問唯一途徑
a*getinstace()
//相對於new getinstace是靜態的
private:
static a *a;};
a *a =
null
;//類外進行初始化
//單例分為懶漢式和餓漢式:
//懶漢式
class singleton_lazy
;public:
static singleton_lazy *
getinstance()
//呼叫時才會new出物件。
return psingleton_lazy;
}private:
static singleton_lazy*psingleton_lazy;};
singleton_lazy* singleton_lazy:
:psingleton_lazy =
null
;//初始化置空
//餓漢式
class singleton_hunger
;static singleton_hunger *
getinstance()
*/return psingleton_hunger;
}private:
static singleton_hunger*psingleton_hunger;};
//初始化即建立物件
singleton_hunger* singleton_hunger:
:psingleton_hunger = new singleton_hunger;
intmain()
else
//psingleton_lazy;
std:
:cout <<
"hello world!\n"
;}
單例模式 懶漢模式和餓漢模式
單例模式就是在整個程式中只能有乙個類的例項存在,並提供乙個訪問該例項的全域性訪問點。單例模式的優點 1 由於單例模式只生成乙個例項,較少了系統開銷,當乙個物件的產生的產生需要比較多的資源時,如讀取配置 產生其他依賴物件是,則可以通過在應用啟動時直接產生乙個單例物件,然後永久駐留內容的方式來解決。2 ...
單例模式 餓漢模式和懶漢模式
一 所謂類的單例設計模式,就是採取一定的方法保證在整個的軟體系統中,對某個類只能存在乙個物件例項。具體 的實現 1 餓漢模式 提前建立物件 餓漢模式 class bank 內部建立類的物件 此物件也必須建立為靜態的 private static bank instance new bank 提供公共...
單例模式 餓漢和懶漢模式
一 單例模式定義 單例模式確保某個類只有乙個例項,而且自行例項化並向整個系統提供這個例項。在計算機系統中,執行緒池 快取 日誌物件 對話方塊 印表機 顯示卡的驅動程式物件常被設計成單例。這些應用都或多或少具有資源管理器的功能。每台計算機可以有若干個印表機,但只能有乙個printer spooler,...