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

            zhujian

            揣著夢(mèng)想騎驢找馬但不虐待驢
            posts - 10, comments - 7, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

            pimp idiom降低程序偶合

            Posted on 2011-01-16 16:42 逐漸 閱讀(1600) 評(píng)論(0)  編輯 收藏 引用
            pimp idiom的詳細(xì)說明可以訪http://www.gotw.ca/gotw/024.htm(這個(gè)網(wǎng)站好像被墻了,很諷刺),其實(shí)就是將定義與實(shí)現(xiàn)分開。

            在我博客上一篇隨筆《關(guān)于高內(nèi)聚低偶合》提到的問題,pimp idiom對(duì)降低程序偶合有一定的幫助,下面是我的理解思路,大家有好的意見或者更好的方法可以一起討論下:

             1 class Para_Base
             2 {
             3     //
             4 };
             5 
             6 class GA_Para
             7     :public Para_Base
             8 {
             9     //
            10 };
            11 
            12 class Alg_Base
            13 {
            14 public:
            15     Alg_Base(Para_Base *p)
            16         :m_pPara(p) { }
            17     //
            18 protected:
            19     Para_Base *m_pPara;
            20 };
            21 
            22 class GA_Alg
            23     :public Alg_Base
            24 {
            25     //    
            26 public:
            27     GA_Alg(GA_Para *pGA)
            28         :Alg_Base(pGA) { }
            29 };

            參數(shù)基類Para_Base和特定的算法參數(shù)類GA_Para都沒有改變。

            算法基類Alg_Base的模板去掉了,同時(shí)添加了一個(gè)指向參數(shù)基類Para_Base的指針成員變量,而以前用的是模板指針。并且修改了構(gòu)造函數(shù),構(gòu)造函數(shù)接受一個(gè)指向Para_Base的指針并賦給m_pPara。

            特定算法類GA_Alg繼承自算法基類Alg_Base,但修改了構(gòu)造函數(shù),接受指向GA_Para的一個(gè)指針,然后調(diào)用父類Alg_Base的構(gòu)造函數(shù),這樣的結(jié)果便是m_pPara指向的是GA_Para實(shí)例,等價(jià)于Para_Base *m_pPara = new GA_Para();

            相對(duì)于上一篇提到的模板實(shí)現(xiàn),pimp idiom的偶合更低些,而且pimp idiom應(yīng)用也非常廣泛。

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


            午夜不卡久久精品无码免费| 精品国产一区二区三区久久久狼| 国产精品久久久久久福利69堂| 成人国内精品久久久久影院| 精品久久久久国产免费| 2020国产成人久久精品| 国产∨亚洲V天堂无码久久久| 久久精品成人影院| 国产成人无码精品久久久性色| 狠狠久久亚洲欧美专区 | 婷婷国产天堂久久综合五月| 久久久久亚洲精品天堂| 欧美成人免费观看久久| 色综合久久综精品| 色88久久久久高潮综合影院| 蜜臀久久99精品久久久久久| 国产精品久久久亚洲| 久久中文字幕人妻熟av女| 国产69精品久久久久99| 97久久综合精品久久久综合| 亚洲精品无码久久久久sm| 三级韩国一区久久二区综合| 国产精品一区二区久久精品无码| 国产精品岛国久久久久| 精品久久久无码人妻中文字幕豆芽 | 久久超乳爆乳中文字幕| 国产精品久久新婚兰兰| 四虎久久影院| 亚洲日韩欧美一区久久久久我| 久久香蕉国产线看观看猫咪?v| 国内精品久久久久久久coent| 99热都是精品久久久久久| 9999国产精品欧美久久久久久| 国产精品久久久久久福利69堂| 国产91色综合久久免费| 国产成人久久精品区一区二区| 九九精品99久久久香蕉| 99久久99久久精品免费看蜜桃| 亚洲国产成人久久综合碰碰动漫3d| 久久精品国产99国产电影网| 精品国际久久久久999波多野|