• <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++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              6 隨筆 :: 14 文章 :: 0 評論 :: 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 閱讀(325) 評論(0)  編輯 收藏 引用

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


            久久久久久久99精品免费观看| 国产一级做a爰片久久毛片| 久久综合中文字幕| 久久99国产精品久久久| 国产高潮久久免费观看| 97香蕉久久夜色精品国产| 久久精品无码专区免费青青| 久久精品视频免费| 亚洲综合久久久| 亚洲国产精品婷婷久久| 久久婷婷五月综合成人D啪| 97久久国产亚洲精品超碰热| 亚洲伊人久久成综合人影院 | 午夜精品久久影院蜜桃 | 久久天天躁狠狠躁夜夜躁2014| 亚洲精品无码久久久久sm| 日本强好片久久久久久AAA| 国产福利电影一区二区三区久久老子无码午夜伦不 | 性做久久久久久久久浪潮| 久久亚洲精品无码AV红樱桃| 国产L精品国产亚洲区久久 | A级毛片无码久久精品免费| 久久精品卫校国产小美女| 国产午夜福利精品久久| 久久久无码精品亚洲日韩蜜臀浪潮 | 久久影视综合亚洲| 色综合久久无码五十路人妻| 久久久网中文字幕| 青青青青久久精品国产 | 久久精品国产精品亚洲精品 | 久久精品国产亚洲av瑜伽| 国产欧美久久久精品影院| 精品国产青草久久久久福利| 久久精品成人免费看| 久久99精品国产一区二区三区| 99久久国产热无码精品免费 | 久久综合给合久久狠狠狠97色69| 久久九九久精品国产免费直播| 精品国产一区二区三区久久| 囯产精品久久久久久久久蜜桃| 亚洲精品NV久久久久久久久久 |