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

            這個(gè)kisser不太冷
            posts - 100, comments - 102, trackbacks - 0, articles - 0

            再次探討雙分派double dispatch

            Posted on 2007-03-13 16:02 kk 閱讀(1250) 評(píng)論(2)  編輯 收藏 引用 所屬分類: C++
            前幾次寫(xiě)了一下關(guān)于c++不支持多分派(包括雙分派)的問(wèn)題,應(yīng)該說(shuō)是學(xué)習(xí)了,本人還是個(gè)菜鳥(niǎo)啊。
            發(fā)現(xiàn)我自己把多分派給搞復(fù)雜了!其實(shí)雙分派這個(gè)概念也是從學(xué)visitor模式看到的,其意義在于接受者和參數(shù)都能在運(yùn)行時(shí)決定它的類型,但是c++只支持單分派,也就是說(shuō)參數(shù)的類型將在編譯階段決定。所以其實(shí)想要演示一下這個(gè)問(wèn)題的話,其實(shí),是非常簡(jiǎn)單的!如下:
            ///////////////////////////////////////////////////////////////////
            #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ù)能夠在運(yùn)行時(shí)決定類型的話,那么輸出來(lái)的信息應(yīng)該是BE:BE,因?yàn)閜2的實(shí)際類型是BE。但是,事實(shí)上輸出來(lái)的結(jié)果是BE:B。也就是說(shuō)p2的類型被誤解為B了!這就是問(wèn)題的所在了。
            把簡(jiǎn)單的事情搞復(fù)雜了,那真是折騰啊,呵呵。
            Over。


            Feedback

            # re: 再次探討雙分派double dispatch  回復(fù)  更多評(píng)論   

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

            # re: 再次探討雙分派double dispatch  回復(fù)  更多評(píng)論   

            2007-03-22 23:59 by 小熊
            有什么不明白的阿?
            歡迎提出來(lái)大家討論討論阿。雖然俺懂得也不多,呵呵
            久久成人精品| 国内精品久久久久| 午夜不卡久久精品无码免费| 欧美一区二区三区久久综| 美女写真久久影院| 久久综合视频网站| 国产精品女同久久久久电影院| 国产免费福利体检区久久| 性做久久久久久久| 久久久精品波多野结衣| 久久精品国产久精国产思思 | 亚洲精品成人久久久| 久久久无码精品亚洲日韩按摩| 久久精品国产只有精品66| 亚洲色大成网站WWW久久九九| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 国产99久久久国产精免费| 人妻精品久久无码区| 怡红院日本一道日本久久| 天天躁日日躁狠狠久久| 久久精品国产欧美日韩| 国产精品久久久久久久久鸭| 亚洲人成网亚洲欧洲无码久久| 国产一区二区精品久久凹凸| 国内精品九九久久久精品| 亚洲av伊人久久综合密臀性色| 性做久久久久久久久老女人| 精品久久久久中文字| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 久久综合给合久久国产免费 | 人妻少妇久久中文字幕| 99久久国产综合精品女同图片| 亚洲乱码日产精品a级毛片久久| 久久综合九色综合久99| 久久婷婷综合中文字幕| 99久久精品免费国产大片| 久久亚洲国产中v天仙www| 一本久久a久久精品综合夜夜| 99久久精品国产综合一区| 香蕉久久永久视频| 久久久国产乱子伦精品作者|