• <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>
            句柄類是存儲和管理基類指針的一個類
            需要句柄類的背景:
            1)在對安全要求很高的領(lǐng)域,即使核心實現(xiàn)已經(jīng)封閉在庫中不可見,但頭文件中變量定義仍可能曝露一些內(nèi)部信息
            2)在設(shè)計初期、實現(xiàn)部分會經(jīng)常變動,甚至頭文件中變量定義也需要經(jīng)常變動,因此在重編譯的時候頭文件也需要編譯,
            有時候?qū)е戮幾g時間過長。
            句柄類就是為了解決這類問題
            // Handle.h
            class Implement; //這里是對真正實現(xiàn)功能的類的聲明

            class ImplementHandle //這是Implement類的句柄類
            {
            public:
            ImplementHandle():lpImplementInstance(NULL){lpImplementInstance = new Implement;}
            ~ImplementHandle(){ delete lpImplementInstance ;}
            public:
            // Interface_FOO() 是句柄類提供的接口,它的真正實現(xiàn)是在Implement類里面,而這個僅僅是接口"代理"
            RE_TYPE Interface_FOO()
            {
            return lpImplementInstance->FOO
            _
            Implementation(); //句柄代理調(diào)用實現(xiàn)真正的FOO接口
            }
            //還有其他的接口也一樣,均是用句柄類代理接口
            //....
            private:
            Implement * lpImplementInstance; //這個是句柄類唯一的數(shù)據(jù)成員(當然,并不一定),可以被句柄類很好地自動管理
            };




              被封裝在句柄類里面的真正實現(xiàn)(class Implement)將與用戶隔離開來,就是說,就算以后Implement 類的實現(xiàn)有所改變,
            只要它提供的接口不變,那么它的句柄類就不會改變,而包含句柄類的用戶,也不用做任何相應(yīng)的改變(所有包含 “Handle.h”的模塊甚至不用從新編譯就可以正常更新至最新的Implement實現(xiàn))。

            例如
            #include "Handle.h"
            Imlementhandle testhandle;
            testhandle->Interface_Foo();//調(diào)用接口即可。
            如果改動了Implent類的方法

              于此相反,如果直接用class Implement 的定義,那么只要Implement類的定義有所改變(不管是public 還是private 成員
            的更新),那么所有包含它的頭文件的模塊都要從新編譯一次。

            這其實就是接口與實現(xiàn)的分離,


            Posted on 2008-10-07 16:13 micheal's tech 閱讀(1165) 評論(0)  編輯 收藏 引用 所屬分類: C++ programme language設(shè)計模式
            久久精品成人免费国产片小草| 亚洲伊人久久精品影院 | 精品熟女少妇a∨免费久久| 伊人久久大香线蕉av不变影院| 亚洲综合久久夜AV | 无码人妻精品一区二区三区久久 | 久久久久se色偷偷亚洲精品av| 欧美久久一级内射wwwwww.| 国产aⅴ激情无码久久| 精品久久香蕉国产线看观看亚洲| 国内精品久久久久久久涩爱| 99久久做夜夜爱天天做精品| 久久久一本精品99久久精品66| 久久综合九色综合久99| 欧美激情一区二区久久久| …久久精品99久久香蕉国产| 色婷婷综合久久久久中文字幕| 乱亲女H秽乱长久久久| 久久青青草原精品国产不卡| 久久精品夜夜夜夜夜久久| 一本久久精品一区二区| 99久久免费国产精品| 久久ZYZ资源站无码中文动漫| 久久久受www免费人成| 久久国产精品久久国产精品| 亚洲国产精品无码成人片久久| 99久久精品无码一区二区毛片| 久久99国产综合精品| 亚洲国产天堂久久久久久| 国产精品一区二区久久精品无码 | 久久精品国产影库免费看| 亚洲精品乱码久久久久久 | 久久夜色tv网站| 丁香狠狠色婷婷久久综合| 久久人人爽人人爽人人片av高请| 四虎影视久久久免费观看| 理论片午午伦夜理片久久 | 五月丁香综合激情六月久久| 久久这里只有精品首页| 国产香蕉久久精品综合网| 久久精品?ⅴ无码中文字幕|