• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 5, comments - 40, trackbacks - 0, articles - 0

            單件模式的實現

            Posted on 2008-03-01 22:01 Wang Jinbo 閱讀(2131) 評論(5)  編輯 收藏 引用 所屬分類: 設計模式
            對于某些用途的類,必須確保在程序運行過程中最多只有一個實例。單件模式很適合這種場合。
            單件模式實現的技巧是將構造函數私有化,這樣就禁止了直接定義對象變量和用new生成對象。但將構造函數設為私有的話,又如何去生成那個唯一的對象呢?廢話少說,先貼代碼。
            class Singleton{
                
            private:
                    Singleton(){
                        
            // more code
                    }
                    
            static Singleton *thisInstance;
                    
            // more code
                public:
                    
            static Singleton *getInstance();
                    
            // more code
            };
            Singleton 
            *Singleton::thisInstance=NULL;
            Singleton 
            *Singleton::getInstance(){
                
            if (thisInstance==NULL)
                    thisInstance
            =new Singleton();
                
            return thisInstance;
            }

            如此一來,要取得Singleton的實例,只能用getInstance函數。getInstance函數必須是靜態(Static)的,這樣才能在還沒有實例的時候使用這個函數。而getInstance又是Singleton類里的函數,當然是可以在其中使用new來生成對象了。所以說雖然將類的構造函數私有化了,但構造函數本身還是有意義的,它會在構建第一個,也是唯一一個實例的時候執行。同時,保證了不會出現多于一個的實例。

            Feedback

            # re: 單件模式的實現  回復  更多評論   

            2008-03-02 05:24 by helpsoff.com.cn
            離真正可用的singleton實現還早得很呢~~

            # re: 單件模式的實現  回復  更多評論   

            2008-03-02 21:37 by 螞蟻終結者
            singleton遠沒有想象的那么簡單!

            # re: 單件模式的實現  回復  更多評論   

            2008-03-03 11:18 by
            沒有釋放內存,沒有信號量。。。。。。。。。。。

            # re: 單件模式的實現  回復  更多評論   

            2008-03-04 00:32 by 逍遙劍客
            還有依賴關系的單件之間的初始化順序問題

            # re: 單件模式的實現[未登錄]  回復  更多評論   

            2008-03-05 09:26 by erran
            yun si
            久久A级毛片免费观看| 久久99国产精一区二区三区| 久久久一本精品99久久精品88| 国产精品久久久久蜜芽| 国产亚洲精品美女久久久| 成人国内精品久久久久影院VR| 亚洲精品无码久久久久AV麻豆| www.久久热.com| 亚洲综合伊人久久大杳蕉| 国产免费福利体检区久久 | 久久久无码一区二区三区| 99久久精品久久久久久清纯| 欧美激情一区二区久久久| 91精品国产综合久久四虎久久无码一级| 国内精品久久久久久久亚洲| 无码AV中文字幕久久专区| 香蕉aa三级久久毛片| 国产69精品久久久久99尤物| 久久精品夜夜夜夜夜久久| 人妻无码αv中文字幕久久琪琪布| 女人香蕉久久**毛片精品| 人妻精品久久无码专区精东影业| 久久性精品| 久久亚洲中文字幕精品一区| 青青青伊人色综合久久| 99国产精品久久久久久久成人热| 久久无码AV一区二区三区| 四虎影视久久久免费观看| 欧美一级久久久久久久大| 久久国产免费直播| 国产精品熟女福利久久AV| 久久综合狠狠色综合伊人| 久久青青草原精品影院| 女人香蕉久久**毛片精品| 国产精品久久久久久久久免费| 久久国产精品99精品国产| 国产精品久久久久天天影视| 97久久精品人妻人人搡人人玩| 国产美女久久久| 久久久久亚洲AV无码去区首| 人妻无码精品久久亚瑟影视|