設計模式之單例模式

2021-08-13 04:03:35 字數 939 閱讀 9346

設計模式中單例模式是相對簡單的設計模式,其設計模式的核心思想為對應的類只能例項化乙個物件,通常這個物件伴隨著整個程式的生命週期,當然我們也可以自主的去釋放掉該物件,單例模式通常有兩種實現方式,一種為懶漢模式,一種為餓漢模式,其實所謂的懶漢模式即為延遲載入技術,通俗講即為等到用的時候才去建立,這種技術相當於以時間換空間,而餓漢模式正好相反, 即為以空間換時間,並且餓漢模式的實現方式也相對更加簡單一些。廢話少說直接上**。

懶漢模式:解決多執行緒中單例模式-設計理念採用double-lock 雙重鎖定。

class

csingleton

unlock();}}

static void destory()

private://將類的建構函式、拷貝構造、賦值構造全部私有化

static csingleton *m_ptr;

csingleton();

csingleton(const csingleton &other);

csingleton & operator=(const csingleton &other);

};csingleton * csingleton::m_ptr = null;

餓漢模式: 簡單到爆 不多說了

class csingleton

static

void destory()

private:

static csingleton *m_ptr;

csingleton();

csingleton(const csingleton &other);

csingleton & operator=(const csingleton &other);

};csingleton * csingleton::m_ptr = new csingleton;;

設計模式之單例模式

前一段時間買了一本秦小波寫的 設計模式之禪 網上對這書的評價很高。現在還沒有看很多,但是有些地方頗有感觸,也並不是所有的地方都能看懂,但是會慢慢研究的。自己對於設計模式的感覺就是乙個字 牛!感覺會23種設計模式並且會熟練運用的人,真的就是大師級的牛人了,設計模式是乙個專案主管或者架構師一定要會的東西...

設計模式之單例模式

package com.xie.singleton public class singleton 提供乙個共有的靜態的入口方法 public static singleton getinstance 懶漢式 延遲載入 提供乙個私有的靜態的成員變數,但不做初始化 private static sing...

設計模式之 單例模式

單例模式 singleton 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。單例模式 單件模式 使用方法返回唯一的例項 public class singleton private static singleton instance public static singleton geti...