• <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>
            Impossible is nothing  
              愛過(guò)知情重醉過(guò)知酒濃   花開花謝終是空   緣份不停留像春風(fēng)來(lái)又走   女人如花花似夢(mèng)
            公告
            日歷
            <2006年4月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            30123456
            統(tǒng)計(jì)
            • 隨筆 - 8
            • 文章 - 91
            • 評(píng)論 - 16
            • 引用 - 0

            導(dǎo)航

            常用鏈接

            留言簿(4)

            隨筆分類(4)

            隨筆檔案(8)

            文章分類(77)

            文章檔案(91)

            相冊(cè)

            搜索

            •  

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

             
            1 下面程序有什么錯(cuò)誤:
            class base{
            private: int i;
            public: base(int x){i=x;}
            };
            class derived: public base{
            private: int i;
            public: derived(int x, int y) {i=x;}
            void printTotal() {int total = i+base::i;}
            };



            2. Assume you have a class like

            class erp
            {
            HR* m_hr;
            FI* m_fi;
            public:
            erp()
            {
            m_hr = new HR();
            m_fi = new FI();
            }
            ~erp()
            {
            }
            };

            if "new FI()" failed in the constructor, how can you detect this problem and
            release the properly allocated member pointer m_hr?

            3. Check the class and variable definition below:

            #include <iostream>
            #include <complex>
            using namespace std;
            class Base
            {
            public:
            Base() { cout<<"Base-ctor"<<endl; }
            ~Base() { cout<<"Base-dtor"<<endl; }
            virtual void f(int) { cout<<"Base::f(int)"<<endl; }
            virtual void f(double) {cout<<"Base::f(double)"<<endl; }
            virtual void g(int i = 10) {cout<<"Base::g()"<<i<<endl; }
            };

            class Derived: public Base
            {
            public:
            Derived() { cout<<"Derived-ctor"<<endl; }
            ~Derived() { cout<<"Derived-dtor"<<endl; }
            void f(complex<double>) { cout<<"Derived::f(complex)"<<endl; }
            virtual void g(int i = 20) {cout<<"Derived::g()"<<i<<endl; }
            };

            Base b;
            Derived d;

            Base* pb = new Derived;
            Select the correct one from the four choices:
            Cout<<sizeof(Base)<<endl;
            A. 4 B.32 C.20 D.Platform-dependent
            Cout<<sizeof(Base)<<endl;
            A. 4 B.8 C.36 D.Platform-dependent
            pb->f(1.0);
            A.Derived::f(complex) B.Base::f(double)
            pb->g();
            A.Base::g() 10 B.Base::g() 20
            C.Derived::g() 10 D.Derived::g() 20

            4.Implement the simplest singleton pattern(initialize if necessary).

            5.Name three sort algorithms you are familiar with. Write out the correct
            order by the average time complexity.

            6.Write code to sort a duplex direction linklist. The node T has overridden
            the comparision operators.


            7.Below is usual way we find one element in an array:

            const int *find1(const int* array, int n, int x)
            {
            const int* p = array;
            for(int i = 0; i < n; i++)
            {
            if(*p == x)
            {
            return p;
            }
            ++p;
            }
            return 0;
            }

            In this case we have to bear the knowledge of value type "int", the size of
            array, even the existence of an array. Would you re-write it using template
            to eliminate all these dependencies?
            posted on 2006-04-12 22:35 笑笑生 閱讀(1493) 評(píng)論(2)  編輯 收藏 引用 所屬分類: STL/BOOST
            評(píng)論:
            • # re: sap的幾道筆試題目(轉(zhuǎn))  任我行 Posted @ 2006-04-13 08:47
              1.
              public: derived(int x, int y) {i=x;}
              //derived(int x, int y):base(y){i=x;}
              void printTotal() {int total = i+#base::i#;}
              2.
              try{
              m_fi = new FI();
              }
              catch(bad_alloc &){
              delete m_hr;
              }

              3.前兩題題目重復(fù)吧。
              Cout<<sizeof(Base)<<endl; //32
              A. 4 B.32 C.20 D.Platform-dependent
              Cout<<sizeof(Base)<<endl;
              A. 4 B.8 C.36 D.Platform-dependent
              3.3
              pb->f(1.0); //Base::f(double)
              pb->g();//Derived::g()20  回復(fù)  更多評(píng)論   

            • # re: sap的幾道筆試題目(轉(zhuǎn))  tuesday Posted @ 2006-04-13 19:39
              第二題可以這樣做
              template<class T>
              class PWrap
              {
              T* ptr;
              PWrap() { ptr = new T;}
              ~PWrap() {delete ptr;}
              };

              class erp
              {
              PWrap<HR> m_hr;
              PWrap<FI> m_fi;
              };  回復(fù)  更多評(píng)論   

             
            Copyright © 笑笑生 Powered by: 博客園 模板提供:滬江博客
            久久久91人妻无码精品蜜桃HD| 久久国产免费观看精品| 久久国产三级无码一区二区| 久久久久亚洲精品无码网址| 99蜜桃臀久久久欧美精品网站 | 亚洲精品无码专区久久同性男| 午夜视频久久久久一区 | 久久久WWW成人免费精品| 免费精品久久天干天干| 久久噜噜电影你懂的| 亚洲AV无码1区2区久久| 久久亚洲电影| 国产一区二区三区久久精品| 波多野结衣久久一区二区| 国产精品gz久久久| av无码久久久久不卡免费网站| 午夜精品久久久久久| 欧美亚洲另类久久综合| 亚洲国产精品无码久久久不卡 | 久久精品男人影院| 久久精品www人人爽人人| 国产三级久久久精品麻豆三级| 久久综合九色欧美综合狠狠 | 国产精品久久婷婷六月丁香| 精品99久久aaa一级毛片| 久久福利片| 91精品国产色综久久| 99热精品久久只有精品| 粉嫩小泬无遮挡久久久久久| 国内精品久久人妻互换| 777午夜精品久久av蜜臀| 久久亚洲精品无码AV红樱桃| 久久亚洲美女精品国产精品| 亚洲乱码精品久久久久..| 久久精品国产亚洲AV影院| 久久久免费精品re6| 久久婷婷激情综合色综合俺也去| 免费久久人人爽人人爽av| 亚洲AV日韩AV天堂久久| 久久午夜无码鲁丝片| 狠狠干狠狠久久|