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

            Kisser Leon

            這個kisser不太冷
            posts - 100, comments - 102, trackbacks - 0, articles - 0

            再次探討雙分派double dispatch

            Posted on 2007-03-13 16:02 kk 閱讀(1240) 評論(2)  編輯 收藏 引用 所屬分類: C++
            前幾次寫了一下關于c++不支持多分派(包括雙分派)的問題,應該說是學習了,本人還是個菜鳥啊。
            發(fā)現(xiàn)我自己把多分派給搞復雜了!其實雙分派這個概念也是從學visitor模式看到的,其意義在于接受者和參數(shù)都能在運行時決定它的類型,但是c++只支持單分派,也就是說參數(shù)的類型將在編譯階段決定。所以其實想要演示一下這個問題的話,其實,是非常簡單的!如下:
            ///////////////////////////////////////////////////////////////////
            #include <iostream>
            using namespace std;

            class BE;

            //B
            class B
            {
            public:
            ?void virtual output(B * b){cout << "B:B" << endl;}
            ?void virtual output(BE * be){cout << "B:BE" << endl;}
            };
            class BE : public B
            {
            public:
            ?void output(B * b){cout << "BE:B" << endl;}
            ?void output(BE * be){cout << "BE:BE" << endl;}
            };

            int main()
            {
            ??? B * p1 = new BE;
            ??? B * p2 = new BE;
            ??? p1->output(p2);
            ?
            ?return 0;
            }
            ///////////////////////////////////////////////////////////////////
            如果參數(shù)能夠在運行時決定類型的話,那么輸出來的信息應該是BE:BE,因為p2的實際類型是BE。但是,事實上輸出來的結果是BE:B。也就是說p2的類型被誤解為B了!這就是問題的所在了。
            把簡單的事情搞復雜了,那真是折騰啊,呵呵。
            Over。


            Feedback

            # re: 再次探討雙分派double dispatch  回復  更多評論   

            2007-03-22 17:41 by 夢在天涯
            o ,整了半天,安還是沒有完全的明白哦

            # re: 再次探討雙分派double dispatch  回復  更多評論   

            2007-03-22 23:59 by 小熊
            有什么不明白的阿?
            歡迎提出來大家討論討論阿。雖然俺懂得也不多,呵呵
            午夜天堂av天堂久久久| 久久亚洲精品国产精品婷婷| 奇米影视7777久久精品人人爽| 国内精品欧美久久精品| 亚洲午夜无码久久久久小说| 老男人久久青草av高清| 人人狠狠综合久久亚洲88| 亚洲v国产v天堂a无码久久| 久久香蕉超碰97国产精品| 国产日韩久久免费影院| 天堂久久天堂AV色综合| 久久综合成人网| 99久久国产热无码精品免费久久久久| 久久久久久噜噜精品免费直播 | 一本久久知道综合久久| 亚洲一区二区三区日本久久九| 久久精品国产亚洲av麻豆图片| 婷婷综合久久狠狠色99h| 亚洲狠狠婷婷综合久久久久| 久久亚洲色一区二区三区| 青青草原综合久久| 久久丫精品国产亚洲av不卡| 精品无码久久久久国产动漫3d| 手机看片久久高清国产日韩 | 国产精品一区二区久久| 久久成人国产精品免费软件| 久久综合视频网| 久久久久国产一区二区| 国产成人久久777777| 潮喷大喷水系列无码久久精品| 99久久夜色精品国产网站| 欧美日韩精品久久久免费观看| 久久久久久久久久免免费精品 | 久久久久18| 久久久久久久综合综合狠狠| 久久久久国产日韩精品网站| 久久99精品国产麻豆婷婷| 久久国产成人午夜AV影院| 激情五月综合综合久久69| 国产AⅤ精品一区二区三区久久| 88久久精品无码一区二区毛片 |