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

            foobar

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              6 隨筆 :: 14 文章 :: 0 評(píng)論 :: 0 Trackbacks

             

            #include <iostream.h>
            class Base
            {
            public:
            virtual void f(float x){ cout << "Base::f(float) " << x << endl; }
            void g(float x){ cout << "Base::g(float) " << x << endl; }
            void h(float x){ cout << "Base::h(float) " << x << endl; }
            };
            class Derived : public Base
            {
            public:
            virtual void f(float x){ cout << "Derived::f(float) " << x << endl; }
            void g(int x){ cout << "Derived::g(int) " << x << endl; }
            void h(float x){ cout << "Derived::h(float) " << x << endl; }
            };

            void main(void)
            {
            Derived d;
            Base 
            *pb = &d;
            Derived 
            *pd = &d;
            // Good : behavior depends solely on type of the object
            pb->f(3.14f); // Derived::f(float) 3.14
            pd->f(3.14f); // Derived::f(float) 3.14
            // Bad : behavior depends on type of the pointer
            pb->g(3.14f); // Base::g(float) 3.14
            pd->g(3.14f); // Derived::g(int) 3 (surprise!)
            // Bad : behavior depends on type of the pointer
            pb->h(3.14f); // Base::h(float) 3.14 (surprise!)
            pd->h(3.14f); // Derived::h(float) 3.14
            }

            class Base
            {
            public:
            void f(int x);
            };
            class Derived : public Base
            {
            public:
            void f(char *str);
            };
            void Test(void)
            {
            Derived 
            *pd = new Derived;
            pd
            ->f(10); // error
            //why?            
            just imagine multiple inheritance
            }
            posted on 2007-11-23 20:44 foobar 閱讀(326) 評(píng)論(0)  編輯 收藏 引用

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


            久久天天躁狠狠躁夜夜不卡| 久久96国产精品久久久| 久久99精品久久久久久秒播| 91精品观看91久久久久久| 国产高清美女一级a毛片久久w| 久久夜色tv网站| 日韩美女18网站久久精品| 久久99精品国产麻豆宅宅| 91精品国产综合久久精品| 久久夜色精品国产亚洲av| 无码日韩人妻精品久久蜜桃| 国产亚洲欧美成人久久片| 亚洲国产精品嫩草影院久久| 久久人人爽人人爽人人片AV东京热| 国产成人无码久久久精品一| 久久久久久A亚洲欧洲AV冫| 色综合久久久久久久久五月| 精品久久久久久久久久中文字幕 | 国产精品无码久久四虎| 精品久久综合1区2区3区激情| 欧美黑人激情性久久| 亚洲一本综合久久| 麻豆成人久久精品二区三区免费| 品成人欧美大片久久国产欧美...| 久久久久av无码免费网| 久久av免费天堂小草播放| 久久久久久午夜成人影院| 久久综合久久伊人| 久久精品无码一区二区三区免费| 久久久精品国产sm调教网站 | 伊人久久精品线影院| 欧美牲交A欧牲交aⅴ久久| 久久久精品波多野结衣| 一级做a爰片久久毛片人呢| AV色综合久久天堂AV色综合在 | 久久66热人妻偷产精品9| 国产精品久久久久久五月尺| 久久久亚洲精品蜜桃臀| 88久久精品无码一区二区毛片 | 亚洲狠狠婷婷综合久久蜜芽 | 久久久精品国产Sm最大网站|