posts - 403, comments - 310, trackbacks - 0, articles - 7
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          MaNGOS閱讀筆記 (1)

          Posted on 2008-06-03 19:03 ZelluX 閱讀(783) 評論(0)  編輯  收藏 所屬分類: C/C++Laboratory
          1. framwork/policies/Singleton.h
          Singleton模式,可以指定相應的線程模型、創(chuàng)建策略和生命期控制策略。
          對于全局范圍的Singleton實例,定義了若干個宏便于訪問,例如
          #define?sLog?MaNGOS::Singleton<Log>::Instance()
          #define?sMaster?MaNGOS::Singleton<Master>::Instance()

          Singleton的定義:


          不知道這里的注釋Prohibited actions...this does not prevent hijacking.是什么意思,copy constructor和hijacking有什么關(guān)系呢?

          另外注意這行typedef typename ThreadingModel::Lock Guard;,原來typedef還可以用在函數(shù)上。

          Singleton的Instance方法用的是標準的double-checked lock方法,關(guān)于DCL可以參考這篇博文http://www.aygfsteel.com/zellux/archive/2008/04/07/191365.html

          2. Explicit Constructors
          game/WorkPacket.h中看到的語法,防止構(gòu)造函數(shù)中參數(shù)的隱式轉(zhuǎn)型
          比如explicit String(int n); 用String('c')聲明時就會報錯

          主站蜘蛛池模板: 商河县| 云梦县| 泰顺县| 措美县| 长沙县| 六安市| 洛隆县| 南汇区| 陆河县| 梁河县| 安顺市| 墨脱县| 台中市| 博客| 泰顺县| 南康市| 将乐县| 顺昌县| 南城县| 商都县| 额敏县| 顺义区| 鹿泉市| 东源县| 铁岭县| 双流县| 醴陵市| 阿克| 色达县| 探索| 鄄城县| 汶上县| 江津市| 文成县| 瑞金市| 米易县| 罗定市| 凤冈县| 嘉黎县| 贡觉县| 喜德县|