C++ Quiz 3

1) By default, all members of a class have ___________ access for all its members     

    a) Public
    b) Protected
    c) No access
    d) private

2) Which operator is used to define a member of a class from outside the class definition itself?
    

    a) ::
    b) :
    c) >>
    d) <<


3) What is a constructor?   

    a) A class automatically called whenever a new object of this class is  
        created.
    b) A class automatically called whenever a new object of this class is 
        destroyed.
    c) A function automatically called whenever a new object of this class is 
        created.
    d) A function automatically called whenever a new object of this class is 
        destroyed.

4) Under what conditions a destructor destroys an object?    

    a) Scope of existence has finished
    b) Object dynamically assigned and it is released using the operator 
       delete.
    c) Program terminated.
    d) Both a and b.

5) If no constructor is declared, the compiler assumes the class to have a default constructor with no arguments    
   
    a)True
    b) False


6) How would you read the expression x.y as?

    a) member y of object pointed by x
    b) member y of object x
    c) member x of object y
    d) All of the above


7) Which type of class has only one unique value for all the objects of that same class?    

    a) this
    b) Friend
    c) Static
    d) both a and b


8) What is the output of the following code snippet?
    class test 
    {
           public:
                   static int n;
                   test () { n++; };
                   ~test () { n--; };
    };
    int test::n=0;
    int main () 
    {
         test a;
         test b[5];
         test * c = new test;
         cout << a.n << endl;
         delete c;
         cout << test::n << endl;
       return 0;
    }

    a) 7 6
    b) 6 7
    c) 5 6
    d) 6 5

9) For which type of class private and protected members of the class can be accessed from outside the same class in which they are declared    

    a) No such class exist
    b)
Friend
    c) Static
    d) Virtual

10) Which of the following cannot be inherited from the base class?

    a) Constructor
    b) Friend
    c)
Both a and b cannot be inherited
    d) Both a and b can be inherited

11) If a class x needs to be derived from a class y, which of the following ways is correct to do so?

    a) class x : public y
    b) class y : public x
    c) class x derives public y
    d) class y derives public x

12) A class cannot inherit members from more than one class

    a) True
    b)
False

13) What is a virtual member?

    a) A member of a friend class that can be redefined in its derived classes
    b) A member of a virtual class that cannot be redefined in its derived classes
    

    c) A member of a static class that can be redefined in its derived classes
    d) A member of a class that can be redefined in its derived classes

14) What is the output of the following code snippet assuming user enters the side as 4?    

    class square
    {
        public:
                double side1;
                double area()
                {
                      return(side1*side1);
                }
    };

    int main(){
         double area1=0;
         square c1,c2;
         cout << "Enter the length of the square" << endl;
         cin >> c1.side;
         cout << "The area of the square is : " << c1.area1() << endl;
      return(0);
    }
   

   a) 16
   b) Will result in an error
   c) 8
   d) 12

15) In C++ two different functions can have the same name if their parameter types are same.   

   a) True
   b)
False

16) Can inline functions be used to improve performance?

   a) yes
   b) No
   c) yes, depends on the situation
   d)
Both a and b

17) Which type of casting can be used only with pointers and references to objects?

   a) Dynamic_cast
   b) cast
   c) Static_cast
   d) Pointer_Cast

18) What is reinterpret_cast used for?  

   a) converts integer pointer type to any other integer pointer type
   b) Converts any pointer type to any other pointer type
   c) converts any pointer type to only integer pointer type
   d)
Both a and b

19) Can #define accept parameters?   

   a) Yes
   b) No

20) #if or #elif can be used to evaluate   

   a) Constant expressions
   b) Macro expressions
   c)
Both a and b
   d) All expressions

No comments:

Post a Comment