單身模式

單身模式是單次運行的構造函式生成唯一靜態實例。用於C++中,和Java中的單例模式是一個概念。

要點實例
好像帶“單”字的 Design Pattern 翻譯只有一個“單件模式(Singleton)”。
通俗的講:
我所看到的"單身模式"的解釋是指只有一個實例的類。
與你們所說的只有生成唯一靜態實例是一樣的吧。
主要代碼是這樣的,以下都是在類的內部,假設類名是 A
複製內容到剪貼簿代碼:
private:
A* instance = 0;
public:
A* CreateInstance(){
//構造
if(!instance)
//還沒有生成實例,創建之,否則不加理會
instance = new A;
return instance;
}
protected:
A();
把構造函式 protected 或者 private 都可以,這樣你聲明新的類實例時就沒辦法調用構造函式,只能通過 CreateInstance 來創建實例,於是在 CreateInstance 的控制下,你無論調用幾次,都只能創建一個 A 的實例了....

相關詞條

熱門詞條

聯絡我們