• <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>

            Loki庫研究-消息回調機制實現

            最早以前.就說要好好研究一下Loki庫..一直都忘記..要么就有事.剛好這幾天要寫一個事件ID與事件處理函數的綁訂機制.就想起來Loki的functor來了...花了兩天時間仔細研究了下loki中的幾個實現.全部明白不敢說..不過確實明白了..這種思路..在這里也要多謝權哥...呵呵
            我是從具體的現實思路出發.來研究loki的..我的實現目地.是可以便捷的綁訂事件ID與事件處理函數,在回調事件處理函數時.不會有以前使用函數地址注冊時所產生的問題,比如.回調的函數中無法正常使用函數所歸屬類的信息.無法綁訂同一類不同對象的實現方法

            首先先來研究..實現思路應該是一樣的..同樣是綁訂函數地址.這點.loki的functor以前幫我做好了.剩下的.只是如何能更好的使用
            loki 的一個functor只能綁訂一個函數,
            思路是,預先申請一個足夠大的functor數組,將每個申請的functor存入這個數組中,以數組的下標做為處理函數的ID;

            解決了回調函數的問題,然后就是事件ID了.這個有點郁悶.實現思路有點繞.

            首先事件ID肯定是聲明了的.然后利用聲明的事件ID自動生成相應的事件結構體,則于事件回調不需要變動參數,所以
            所有結構體都派生自同一基體,然后就通過事件結構體中的事件ID來進行綁訂,這樣可以確訂聲明的處理方法必須隸屬于
            某一個對應的事件ID,這點在回調注冊時也可以保證,默認要注冊兩個ID.用于判定當前ID是否超過以聲明的范圍 ,EventBegin  EventEnd;

            解決了事件ID之后..就是它們之前的綁訂了.這個簡單.在聲明進.先傳入事件結構體,再傳入用同樣事件結構體聲明的回調函數,然后將回調函數
            放入相對應以事件ID做為下標的數組中.搞定

            最后還有一個消息分派的問題,這個地方有很多做法,,,暫時我先用最簡單
            由外界傳入一個觸發的事件ID,然后判定 這個ID是否合法,然后回調對應下標的functor...這樣..就回調了相應的處理函數了,參數這里
            做的最簡單化處理,只是聲明了一個結構體,然后.將事件ID賦值,然后把結構體傳入回調函數,以后有需要的話..此結構體可由外界傳入
            相應的值由外界傳入,不過..一個事件回調....貌似沒有這種要求

            呵呵..總之對于模板編程,有了一個比較清晰的了解..最大的收獲就是,看著滿篇的模板,四處亂飛的typename typedef class..不再頭暈了...呵呵

            在這個過程中..還研究了..單件模式,智能指針,抽象化工廠,呵呵..收獲非常大..也感覺自己以前的實現太不優雅了...以后要往優雅方向努力啦

            Loki的單件模式非常Happy.....以后決定..徹底忘記自己 寫的單件...看都不看....專心用loki的.....還有智能指針..不過智能指針有個不爽的地方
            ..也不是不爽..只是我感覺失落....為啥呢...因為智能指針無法控制它什么時候釋放.......它自己會釋放..這樣雖然..安全都有保證,用著也開心....
            不過....忽然不用我釋放了...總是覺得心里少點啥.........想delete......哈哈

            變高手~~~~~變高手~~~~~變高手~~~~~變高手~~~~~變高手~~~~~變高手~~~~~變高手~~~~~變高手~~~~~

            posted on 2007-11-02 18:19 Randy 閱讀(1410) 評論(0)  編輯 收藏 引用

            <2007年11月>
            28293031123
            45678910
            11121314151617
            18192021222324
            2526272829301
            2345678

            導航

            統計

            常用鏈接

            留言簿(3)

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久夜色精品国产www| 精品永久久福利一区二区| 久久精品黄AA片一区二区三区| 久久国产成人| 99久久精品国产一区二区三区| 国产亚洲婷婷香蕉久久精品| 精品乱码久久久久久久| 久久99精品国产麻豆| 久久精品国产亚洲AV香蕉| 久久无码人妻一区二区三区午夜| 久久九九久精品国产免费直播| 久久精品国产免费观看三人同眠| 久久无码国产| 伊人久久综合成人网| 亚洲人成精品久久久久| 亚洲va久久久噜噜噜久久 | 日韩va亚洲va欧美va久久| 久久国产精品一区| 无码任你躁久久久久久老妇| 国产精品久久新婚兰兰| 久久国产热精品波多野结衣AV| 久久精品国产精品青草app| 久久精品国产亚洲Aⅴ香蕉| 中文字幕久久精品| 老色鬼久久亚洲AV综合| 99久久国产综合精品网成人影院 | 老色鬼久久亚洲AV综合| 久久免费精品视频| 亚洲欧美日韩精品久久亚洲区| 亚洲精品无码专区久久久| 四虎国产精品免费久久久| 亚洲美日韩Av中文字幕无码久久久妻妇| 污污内射久久一区二区欧美日韩| 亚洲色欲久久久综合网东京热 | 欧美国产精品久久高清| 99精品久久精品一区二区| 久久99国产精一区二区三区| 麻豆国内精品久久久久久| 91精品国产乱码久久久久久| 亚洲?V乱码久久精品蜜桃| 国产一级做a爰片久久毛片|