/*直接照著boost庫的乙個比較廣泛的單例模式寫的,一字不錯,boost有很多單例模式可以研究
*最近專案用到乙個單例模式,是教科書使得,'懶漢模式',這個是'餓漢模式',優點是在main函式
*開始之前就構造例項了,這樣是執行緒安全的,效率比較高,畢竟不是在堆上建立的一般單例不需要考慮記憶體的洩露,靜態變數生存週期
*和程式執行週期是一樣的,知道程式結束而釋放,。。。總之沒必要為了乙個單例模式安裝boost庫吧
*直接記下來得了。我是這樣認為的,這個單例是其中之一,還有其他好多的單例模式需要學習,目前寫來
*這乙個吧,現在專案足夠了
*/#include templatestruct singletondefault ;
static objectcreator object_creator;
singletondefault();
public:
typedef t object_type;
static object_type& instance();
};templatetypename singletondefault::objectcreator singletondefault::object_creator;
templateinline singletondefault::objectcreator::objectcreator()
templateinline void singletondefault::objectcreator::donothing() const {}
templateinline typename singletondefault::object_type& singletondefault::instance()
#define singleton(type, name) typedef singletondefaultname
class node ;
void node::print() const
singleton(node, gnodemng);
int main()
單例模式 Singleton 懶漢 餓漢模式
其他文章 include stdafx.h include if 0 單例模式指乙個類只允許有乙個例項,並提供乙個訪問它的全域性訪問點,使得系統中只有唯一的 乙個物件例項,型別分為懶漢模式和餓漢模式 應用 常用於管理資源,如日誌 執行緒池 實現方法 建構函式宣告為private或protect防止被...
(二)singleton單例模式 餓漢模式
include common.h final表示該類不可被繼承 餓漢式 class cmysingleton final cmysingleton cmysingleton char pdata cmysingleton cmysingleton cmysingleton cmysingleton ...
單例模式Singleton(餓漢式和懶漢式)
單例模式在我們開發中經常會用到的,不知道你所喜歡用餓漢模式還是喜歡懶漢模式呢?為什麼會出現有兩種方式來實現單例模式?我看這其中必蹊蹺,你怎麼看?我們來看一下懶漢模式和餓漢模式的實現 餓漢模式 author zhou.ni versioncode 1 每次修改提交前 1 public class hu...