• <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 閱讀(330) 評論(0)  編輯 收藏 引用

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


            久久国产亚洲精品无码| 亚洲精品tv久久久久久久久| 午夜精品久久久久久99热| 久久免费国产精品| 九九热久久免费视频| A级毛片无码久久精品免费| 久久青青草原国产精品免费| 久久精品国产半推半就| 亚洲国产成人久久综合一| 久久久久综合网久久| 精品久久久无码中文字幕天天| 久久亚洲高清观看| 久久国产免费| 久久亚洲欧洲国产综合| 久久亚洲熟女cc98cm| 久久久久AV综合网成人| 1000部精品久久久久久久久| 久久久久综合网久久| 久久精品亚洲精品国产欧美| 99久久综合国产精品免费| 人妻无码αv中文字幕久久琪琪布| 亚洲国产精品无码久久| 久久99国产精品久久| 久久久WWW成人| 亚洲综合伊人久久大杳蕉| 97r久久精品国产99国产精| 国产精品成人无码久久久久久| 久久亚洲色一区二区三区| 国内精品久久久久久久97牛牛| 国产成人99久久亚洲综合精品| 最新久久免费视频| 青青草国产成人久久91网| 国产一区二区久久久| 国产精品一区二区久久不卡 | 大蕉久久伊人中文字幕| 久久这里都是精品| 99久久精品国产麻豆| 久久福利资源国产精品999| 91精品国产9l久久久久| 久久亚洲AV成人无码| 国产 亚洲 欧美 另类 久久|