青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Cpper
C/C++高級工程師 Android高級軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語言 程序猿
通常的單態(tài)實現(xiàn)大都市如下的形式:
1 class Object
2 {
3 public:
4     Object* Instance();
5 protected:
6 };
7 
8 
(應該是Object* Instance())

獲取可以采用如下的模板寫法:
1 template<clas T>
2 class Singleton
3 {
4 public:
5     static T* Instance();
6 };
7 

其實可以對其模板寫法做一下變形如下:
 1 ////////////////////////////////////////////////////////////
 2 /// 單態(tài)模板類(非線程安全的)
 3 ////////////////////////////////////////////////////////////
 4 template <typename Base, typename T> 
 5 class Singleton  
 6 {
 7 public:
 8         
 9     //! 獲取對象指針  
10     /*!
11         這里暫時不需要線程安全的版本:) 
12     */
13     static T* Instance()
14     {    
15         if( NULL == instance ) 
16             instance = new T;
17         assert(instance = 0);
18         return instance;
19     };
20 
21     //! 對象指針的析構  
22     static void Deinit()
23     {
24         delete instance;
25         instance = NULL;
26     };
27 
28 private:  
29     static Base* instance; 
30 };
采用雙模板參數(shù)的手法
這樣做的一個好處就是可以通過特定的環(huán)境來使用合適的單態(tài)版本




posted on 2010-02-05 20:30 ccsdu2009 閱讀(1661) 評論(3)  編輯 收藏 引用
Comments
  • # re: c++單態(tài)的一個變種實現(xiàn)
    ccsdu2009
    Posted @ 2010-02-05 20:32
    比如:
    Singleton<Audio,OpenALAudio>;
    Singleton<Window,LinuxWindow>;  回復  更多評論   
  • # re: c++單態(tài)的一個變種實現(xiàn)
    zmm
    Posted @ 2010-02-06 09:39
    不得不指出這段代碼太不嚴謹,首先在 static T* Instance()中將基類的指針賦給子類,造成編譯沒有通過,而且在函數(shù)后面加;號,也是多此一舉。最后對雙模板好處的闡釋也沒說清楚。
    --針對這篇文章的個人看法。  回復  更多評論   
  • # re: c++單態(tài)的一個變種實現(xiàn)
    ccsdu2009
    Posted @ 2010-02-06 10:57
    恩 后面的逗號是多余的 謝謝

    雙模板好處? 1個是可以避免針對純虛的單態(tài)構造對象
    我不太喜歡寫字丷丷
      回復  更多評論   
  • # re: c++單態(tài)的一個變種實現(xiàn)
    Goteet
    Posted @ 2010-02-06 12:29
    assert(instance = 0);
    可以考慮看看OGRE里面的那個單態(tài)版本。

    template
    class Singleton
    {
    public:
    static T& GetSingleton()
    {
    assert(s_pDerive != 0 && "Singleton::GetSingleton, 未實例化單件.");
    return (*s_pDerive);
    }

    static T* GetSingletonPtr()
    {
    return s_pDerive;
    }

    Singleton()
    {
    assert(s_pDerive == 0 && "Singleton::Singleton, 單件實例已存在.");
    #if defined() && _MSC_VER < 1200
    int iOffset = (int)(T*)1 - (int)(Singleton *)(T*)1;
    s_pDerive = (T*)((int)this + offset);
    #else
    s_pDerive = static_cast (this);
    #endif
    }

    ~Singleton()
    {
    assert(s_pDerive != 0 && "Singleton::~Singleton, 單件實例已銷毀.");
    s_pDerive = 0;
    }

    private:
    static T* s_pDerive;
    };

    template
    T* Singleton::s_pDerive = 0;  回復  更多評論   

只有注冊用戶登錄后才能發(fā)表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


 
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美成人影音| 欧美va天堂在线| 久久久99国产精品免费| 国产麻豆9l精品三级站| 欧美不卡视频一区| 久久久青草婷婷精品综合日韩| 亚洲国产婷婷香蕉久久久久久99| 午夜精品久久久久久久久久久久| 国产精品亚洲成人| 国产精品毛片在线| 国产精品永久免费观看| 国产精品久久久久久久9999| 欧美日韩在线视频观看| 欧美日韩激情小视频| 欧美日韩免费观看一区三区| 欧美日韩不卡| 欧美午夜欧美| 亚洲精品美女久久久久| 久久久精品国产免大香伊| 欧美在线免费观看| 久久精品成人一区二区三区| 欧美一二三区在线观看| 欧美一区二区三区成人| 亚洲欧美久久久| 久久激情综合| 亚洲第一精品福利| 亚洲毛片一区二区| 中日韩视频在线观看| 亚洲欧美精品| 久久久久久欧美| 欧美 日韩 国产 一区| 欧美精品 日韩| 国产精品美女久久久浪潮软件| 国产免费一区二区三区香蕉精| 欧美日本三级| 国产日韩精品一区二区浪潮av| 国产亚洲一本大道中文在线| 亚洲第一精品电影| 亚洲一区二区三区四区中文 | 香蕉久久夜色| 狂野欧美激情性xxxx欧美| 欧美护士18xxxxhd| 99视频精品在线| 久久99伊人| 欧美美女日韩| 红桃视频欧美| 中日韩午夜理伦电影免费| 亚洲网站在线观看| 久热精品视频在线观看一区| 亚洲电影观看| 久久xxxx精品视频| 欧美日韩国产天堂| 亚洲第一区在线观看| 亚洲一区区二区| 亚洲国产欧美在线人成| 午夜欧美精品久久久久久久| 女人天堂亚洲aⅴ在线观看| 国产精品青草久久久久福利99| 91久久精品国产91久久性色tv| 午夜在线精品| 制服丝袜亚洲播放| 免费日韩精品中文字幕视频在线| 欧美日韩国产综合新一区| 国内偷自视频区视频综合| 亚洲视频第一页| 亚洲国产综合在线看不卡| 欧美在线二区| 国产欧美在线看| 久久亚洲一区| 久久综合给合久久狠狠狠97色69| 精品999久久久| 久久在精品线影院精品国产| 欧美一区二区三区视频| 亚洲国产精品久久精品怡红院| 最新中文字幕亚洲| 美日韩在线观看| 亚洲国产精品电影| 久久综合久久88| 欧美在线视频一区二区三区| 亚洲欧美日韩久久精品| 欧美日韩中文另类| 亚洲视频二区| 在线天堂一区av电影| 欧美日韩视频一区二区| 亚洲美女视频| 亚洲精品在线免费| 欧美精品日韩| 亚洲视频在线一区| 一本到高清视频免费精品| 欧美日韩国产一中文字不卡| 一区二区三区精品国产| 一本色道久久加勒比精品| 欧美午夜精品久久久久久孕妇| 国产一区观看| 久久躁狠狠躁夜夜爽| 久久久999成人| 亚洲日本成人女熟在线观看| 亚洲欧洲另类国产综合| 国产无一区二区| 亚洲成人在线视频播放| 欧美77777| 午夜精品一区二区在线观看| 久久久欧美一区二区| 亚洲图片欧洲图片av| 久久精品国产综合精品| 中文在线资源观看视频网站免费不卡| 午夜久久美女| 中文精品一区二区三区| 欧美一区二区私人影院日本| 99在线观看免费视频精品观看| 欧美一二三区精品| 亚洲一区二区视频在线| 久久久久久久精| 欧美一区影院| 国产精品99一区二区| 亚洲第一精品夜夜躁人人躁| 国产日韩亚洲欧美精品| 亚洲精品久久久久| 在线欧美小视频| 小黄鸭视频精品导航| 在线视频精品| 欧美大片91| 欧美黄色片免费观看| 国内精品久久久久久| 亚洲女同精品视频| 亚洲一区亚洲| 欧美日韩在线另类| 亚洲精品欧美专区| 亚洲精品一区二区三区婷婷月| 久久精品首页| 久久午夜电影网| 伊人狠狠色j香婷婷综合| 亚洲制服少妇| 欧美在线观看网址综合| 国产精品三上| 亚洲欧美日韩精品| 久久精品视频一| 久久久噜噜噜| 久久亚洲欧美| 亚洲国产日韩一区| 久久久国产成人精品| 久久频这里精品99香蕉| 国产日韩欧美在线播放不卡| 亚洲女与黑人做爰| 久久精品国产一区二区三区| 国产亚洲女人久久久久毛片| 亚洲欧美综合v| 久久精品观看| 在线精品在线| 欧美激情视频免费观看| 亚洲免费av观看| 亚洲欧美日本另类| 国产精品一区毛片| 久久精品二区亚洲w码| 女人天堂亚洲aⅴ在线观看| 91久久综合亚洲鲁鲁五月天| 欧美国产精品久久| 一本色道久久综合亚洲精品按摩 | 国产精品播放| 亚洲男同1069视频| 久久视频一区二区| 亚洲精品美女在线| 国产精品久久久久aaaa樱花| 亚洲欧美在线播放| 麻豆成人在线播放| 一个人看的www久久| 国产精品久久久久av免费| 亚洲综合欧美| 欧美黄色大片网站| 香蕉精品999视频一区二区| 国产字幕视频一区二区| 欧美国产精品久久| 欧美亚洲免费电影| 欧美成人网在线| 亚洲欧美激情诱惑| 伊人色综合久久天天五月婷| 欧美第一黄色网| 欧美在线视频播放| 日韩一二三在线视频播| 老牛影视一区二区三区| 亚洲天堂成人在线视频| 尤物九九久久国产精品的分类| 欧美日韩成人综合在线一区二区| 欧美一区二区三区四区视频| 亚洲国产精品一区二区久| 久久www成人_看片免费不卡| 99国产精品久久久久老师| 国产一区二三区| 国产精品乱人伦中文| 免费欧美日韩国产三级电影| 亚洲一区精品视频| 亚洲日本乱码在线观看| 久久综合精品国产一区二区三区| 一本色道久久综合一区| 亚洲第一级黄色片| 国内成+人亚洲| 国产精品视频xxxx| 欧美亚一区二区| 欧美日韩在线三级| 欧美国产精品中文字幕|