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

            李帥的博客

            軟件開(kāi)發(fā)愛(ài)好者

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              14 隨筆 :: 3 文章 :: 4 評(píng)論 :: 0 Trackbacks
            9. Which of the following statements provide a valid reason NOT to use RTTI for distributed (i.e. networked between different platforms) applications in C++?
            A. RTTI is too slow.
            B. RTTI does not have standardized run-time behavior.
            C. RTTI uses too much memory.
            D. RTTI's performance is unpredictable/non-deterministic.
            E. RTTI frequently fails to function correctly at run-time

            11. A C++ developer wants to handle a static_cast <char*>() operation for the class String shown below. Which of the following options are valid declarations that will accomplish this task?
            class String {
            public:
              //...
              //declaration goes here
            };
            A. char* operator char*();
            B. operator char*();
            C. char* operator();
            D. String operator char*();
            E. char* operator String();


            16. When a Copy Constructor is not written for a class, the C++ compiler generates one. Which of the following statements correctly describe the actions of this compiler-generated Copy Constructor when invoked?
            A. The compiler-generated Copy Constructor makes the object being constructed, a reference to the object passed to it as an argument.
            B. The compiler-generated Copy Constructor does not do anything by default.
            C. The compiler-generated Copy Constructor performs a member-wise copy of the object passed to it as an argument, into the object being constructed.
            D. The compiler-generated Copy Constructor tags the object as having been Copy-Constructed by the compiler.
            E. The compiler-generated Copy Constructor invokes the assignment operator of the class.

            17. Which of the following must be ensured in order to implement a polymorphic function in C++?
            A.        There has to be a pointer of the derived class that has implemented the polymorphic function that holds the address of the derived class object.
            B.        The function must be declared as virtual in both the base class and in the derived class that overrides the function.
            C.        The function must be declared as pure virtual.
            D.        There has to be a base class pointer holding the address of a base or derived class object that has implemented the polymorphic function.
            E.        The function must be declared as virtual in the base class.

            18. Protected, or private, inheritance, as opposed to public inheritance, models which type of relationship in C++?
            A.        Can-only-have-one-of
            B.        Is-implemented-in-terms-of
            C.        Was-a
            D.        Has-a
            E.        Shares-a-relationship-with

            19. Which of the following statements describe correct methods of handling C++ exceptions?
            A.        Once an exception is thrown, the compiler unwinds the heap, freeing any memory dynamically allocated within the block from which the exception was thrown.
            B.        In a hierarchy of exception classes, the order of handling exceptions can be from the most specific class to the most general class.
            C.        Catching an exception by reference is preferable to catching it by value.
            D.        If an exception is caught by its address or pointer, it is the responsibility of the thrower to release the memory occupied by the exception.
            E.        To write an exception handler, it is essential to know the concrete class of exception to catch.

            20. Which of the following statements regarding functions' default arguments in C++ are correct?
            A.        Default arguments cannot be of a user-defined type.
            B.        Default arguments exist in the global heap and not on the function's stack.
            C.        Default arguments cannot be of pointer type.
            D.        Default arguments can never precede non-default arguments.
            E.        Default arguments are not considered for generating the function's signature.

            21. Which of the following classes must be instantiated so that the object can be used both for reading and writing to the same file in C++?
            A.        ofstream
            B.        stream
            C.        ifstream
            D.        fstream
            E.        iostream

            22.  Which of the following reasons describe why a destructor cannot throw an exception in C++?
            A.        Since the object is being destroyed, it is illogical to throw an exception then.
            B.        A destructor may be invoked as a result of stack unwinding while an exception is being handled.
            C.        It can invoke the terminate() handler.
            D.        The C++ language does not permit it; a throw statement in a destructor will be caught as an error by the compiler.
            E.        A destructor in C++ cannot implement a try...catch block

            24. Which of the following identify const-correctness failures in the C++ program below?
            template<typename T>
            class MyArray
            {
            public:
                MyArray();
                MyArray(MyArray& copy);
                MyArray& operator=(MyArray& copy);
                //...

            };

            class MyData
            {
            public:
                MyData(MyArray<int>& x, MyArray<int>& y);
                //...

                const MyArray<int>& x();
                const MyArray<int>& y();
            };

            MyArray<int> read_data(int*, char**);
            void make_changes(MyData* edit);

            int main(int argc, char* argv[])
            {
                const MyArray<int> read_x = read_data(&argc, argv);
                const MyArray<int> read_y = read_data(&argc, argv);
                 
                MyData user_data(read_x, read_y);
                MyData edit_buffer(user_data);
                make_changes(&edit_buffer);
            }

            A.        MyData(MyArray<int>& x, MyArray<int>& y); should be
            MyData(const MyArray<int>& x, const MyArray<int>& y);

            B.        MyArray(MyArray& copy); should be
            MyArray(const MyArray& copy);

            C.        MyArray& operator=(MyArray& copy); should be
            const MyArray& operator=(const MyArray& copy);

            D.        void make_changes(MyData* edit); should be
            void make_changes(const MyData* edit);

            E.        const MyArray& operator=(const MyArray& copy); should be
            const MyArray& operator=(const MyArray& copy) const;

            25. Which of the following operators must be overloaded by function objects in the Standard Template Library?
            A.        operator +()
            B.        operator ==()
            C.        operator ++()
            D.        operator ()()
            E.        operator []()

            ======================================================

            附上我的選擇和疑問(wèn),歡迎大家指正和討論:

            9. AD (not quite sure)
            11. A (What does this question mean?! Can anyone explain it? )
            16. AC  (Is A right?! Should it be 'a CONST reference to the object passed to it as an argument')
            17. E (not quite sure. Is A or D right too? )
            18. A or E. I have no idea at all!!!!
            19 C (Is B right too?)
            20. only D?
            21. DE
            22. BC ?
            24. only B ?
            25. D
            posted on 2008-11-07 21:37 李帥 閱讀(1360) 評(píng)論(1)  編輯 收藏 引用

            評(píng)論

            # re: 幾道C++筆試題,不定項(xiàng)選擇,請(qǐng)高手解答分析,歡迎討論。 2011-09-21 17:55 臭美街
            [url=http://www.choumeijie.com/]臭美街[/url]  回復(fù)  更多評(píng)論
              


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


            国产精品欧美亚洲韩国日本久久 | 久久99这里只有精品国产| www.久久热.com| 国产精品欧美久久久天天影视| 亚洲av日韩精品久久久久久a| 久久久久久精品久久久久| 国产成人精品三上悠亚久久| 亚洲伊人久久大香线蕉综合图片| 国产成人精品综合久久久久 | 丁香久久婷婷国产午夜视频| 国产精品99久久不卡| 国产精品狼人久久久久影院 | 久久亚洲精品国产亚洲老地址| 久久国产劲爆AV内射—百度| 一本久久知道综合久久| 久久99精品久久只有精品| 久久综合狠狠色综合伊人| 久久久精品日本一区二区三区| 一本色综合久久| 久久成人国产精品| 久久国产精品一区| 久久人妻AV中文字幕| 精品999久久久久久中文字幕| 久久99久久无码毛片一区二区| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 亚洲美日韩Av中文字幕无码久久久妻妇| 久久久亚洲AV波多野结衣| 精品国产福利久久久| 欧美日韩中文字幕久久久不卡 | 久久天天躁夜夜躁狠狠躁2022| 亚洲精品乱码久久久久久按摩| 亚洲欧美日韩精品久久| 狠狠色丁香久久婷婷综合_中 | 久久精品卫校国产小美女| 97久久综合精品久久久综合| 无码乱码观看精品久久| 国内精品久久人妻互换| 久久亚洲国产精品成人AV秋霞| 久久精品国产99国产精品澳门| 国产精品久久久香蕉| 久久久艹|