設計模式(一) 單例設計模式

2021-09-24 15:31:37 字數 753 閱讀 4952

通過某個類在記憶體中只能建立唯一的乙個物件;

1.該物件不是棧(全域性)物件;

2.該物件只能是堆物件。

1.將建構函式私有化;

2.在類中定義乙個靜態的指標變數(一般為私有),並在類外初始化為空;

3.定義乙個返回值為類指標的靜態成員函式。如果2中的指標物件為空,則初始化物件;若非空,直接返回該物件,保證類在記憶體中只有乙個物件。

1.單例模式替換全域性變數;

2.配置檔案的內容可用單例物件儲存;

3.詞典檔案、網頁庫等。

#include

using std:

:cout;

using std:

:endl;

class singleton

return _pinstance;

}static

void

destroy()

void

print()

const

private:

singleton()

:_data(0

)~singleton()

private:

int _data;

static singleton * _pinstance;};

singleton * singleton:

:_pinstance = nullptr;

intmain

(void

)

設計模式 單例設計模式

歷史 最早是建築學領域的模式,然後gof四人由其引申到編碼方面,總結了23種設計模式 設計模式 解決某一類事情最行之有效的方法 2.1 體現 餓漢式,保證物件的唯一性 class singleton 私有化建構函式禁止該類建立物件 private static singleton st new si...

設計模式 單例設計模式

單例模式,是一種常用的軟體設計模式。在它的核心結構中只包含乙個被稱為單例的特殊類。通過單例模式可以保證系統中乙個類只有乙個例項。即乙個類只有乙個物件例項 單例模式的要點有三個 一是某個類只能有乙個例項 二是它必須自行建立這個例項 三是它必須自行向整個系統提供這個例項。單例設計模式 解決的問題 可以保...

設計模式 單例設計模式

設計模式是對問題行之有效的解決方案,它其實是一種思想。單例設計模式 解決的問題 可以保證乙個類在記憶體中只能有乙個物件。比如多個程式使用相同的配置資訊物件時,就需要保證物件的唯一性 如何保證唯一性 1 不允許其他程式用new建立類物件 2 在該類中建立乙個本類例項 3 對外提供乙個方法讓其他程式可以...