McqMate
These multiple-choice questions (MCQs) are designed to enhance your knowledge and understanding in the following areas: Computer Science Engineering (CSE) , Information Technology Engineering (IT) , Programming Languages , Master of Science in Software Engineering (MSc SE) .
1. |
Which of the followings is/are automatically added to every class, if we do not write our own? |
A. | Copy Constructor |
B. | Assignment Operator |
C. | A constructor without any parameter |
D. | All of the above |
Answer» D. All of the above |
2. |
When a copy constructor may be called? |
A. | When an object of the class is returned by value. |
B. | When an object of the class is passed (to a function) by value as an argument. |
C. | When an object is constructed based on another object of the same class |
D. | All of the above |
Answer» D. All of the above |
3. |
Constructors have _____ return type. |
A. | void |
B. | char |
C. | int |
D. | no |
Answer» D. no |
4. |
Implicit return type of a class constructor is: |
A. | not of class type itself |
B. | class type itself |
C. | a destructor of class type |
D. | a destructor not of class type |
Answer» B. class type itself |
5. |
Which of the following is true about constructors?
|
A. | All 1, 2, and 3 |
B. | Only 1 and 3 |
C. | Only 1 and 2 |
D. | Only 2 and 3 |
Answer» B. Only 1 and 3 |
6. |
Output of following program?
|
A. | Compiler Error |
B. | Runtime Error |
C. | Constructor called |
D. | None of the above |
Answer» A. Compiler Error |
7. |
#include<iostream>
|
A. | Compiler Error |
B. | Constructor called Constructor called |
C. | Constructor called |
D. | None of the above |
Answer» C. Constructor called |
8. |
Which operator is having the highest precedence? |
A. | postfix |
B. | unary |
C. | shift |
D. | equality |
Answer» D. equality |
9. |
Which of the following is FALSE about references in C++? |
A. | References cannot be NULL |
B. | A reference must be initialized when declared |
C. | Once a reference is created, it cannot be later made to reference another object; it cannot be reset. |
D. | References cannot refer to constant value |
Answer» D. References cannot refer to constant value |
10. |
Which of the following functions must use reference? |
A. | Assignment operator function |
B. | Copy Constructor |
C. | Destructor |
D. | Parameterized constructor |
Answer» B. Copy Constructor |
11. |
Output of following C++ program?
|
A. | x = 20; ref = 30 |
B. | x = 20; ref = 20 |
C. | x = 10; ref = 30 |
D. | x = 30; ref = 30 |
Answer» A. x = 20; ref = 30 |
12. |
What is the difference between struct and class in C++? |
A. | All members of a structure are public and structures don’t have constructors and destructors |
B. | Members of a class are private by default and members of struct are public by default. When deriving a struct from a class/struct, default access-specifier for a base class/struct is public and when deriving a class, default access specifier is private. |
C. | All members of a structure are public and structures don’t have virtual functions |
D. | All of the above |
Answer» B. Members of a class are private by default and members of struct are public by default. When deriving a struct from a class/struct, default access-specifier for a base class/struct is public and when deriving a class, default access specifier is private. |
13. |
Predict the output of following C++ program.
|
A. | A non-zero value |
B. | 0 |
C. | Compiler Error |
D. | Runtime Error |
Answer» A. A non-zero value |
14. |
class Test {
|
A. | 0 |
B. | Garbage Value |
C. | Compiler Error |
D. | None |
Answer» C. Compiler Error |
15. |
Which of the following is true? |
A. | All objects of a class share all data members of class |
B. | Objects of a class do not share non-static members. Every object has its own copy. |
C. | Objects of a class do not share codes of non-static methods, they have their own copy |
D. | None of the above |
Answer» B. Objects of a class do not share non-static members. Every object has its own copy. |
16. |
A member function can always access the data in __________, (in C++). |
A. | the class of which it is member |
B. | the object of which it is a member |
C. | the public part of its class |
D. | the private part of its class |
Answer» A. the class of which it is member |
17. |
Which of the following is not correct for virtual function in C++? |
A. | Must be declared in public section of class. |
B. | Virtual function can be static. |
C. | Virtual function should be accessed using pointers. |
D. | Virtual function is defined in base class. |
Answer» B. Virtual function can be static. |
18. |
Which of the following is not correct (in C++)?
|
A. | (1) |
B. | (2), (4) |
C. | (2), (3), (4) |
D. | (4) |
Answer» C. (2), (3), (4) |
19. |
Which of the following cannot be passed to a function in C++? |
A. | Constant |
B. | Structure |
C. | Array |
D. | Header file |
Answer» D. Header file |
20. |
Which of the following, in C++, is inherited in a derived class from base class? |
A. | Constructor |
B. | Destructor |
C. | Data members |
D. | Virtual methods |
Answer» C. Data members |
21. |
Which of the following is a correct statement? |
A. | Composition is a strong type of association between two classes with full ownership. |
B. | Composition is a strong type of association between two classes with partial ownership. |
C. | Composition is a weak type of association between two classes with partial ownership. |
D. | Composition is a weak type of association between two classes with strong ownership. |
Answer» A. Composition is a strong type of association between two classes with full ownership. |
22. |
Which of the following is not a correct statement? |
A. | Every class containing abstract method must be declared abstract. |
B. | Abstract class can directly be initiated with ‘new’ operator. |
C. | Abstract class can be initiated. |
D. | Abstract class does not contain any definition of implementation. |
Answer» B. Abstract class can directly be initiated with ‘new’ operator. |
23. |
When a method in a subclass has the same name and type signatures as a method in the superclass, then the method in the subclass _____ the method in the superclass. |
A. | Overloads |
B. | Friendships |
C. | Inherits |
D. | Overrides |
Answer» D. Overrides |
24. |
It is possible to define a class within a class termed as nested class. There are _____ types of nested classes. |
A. | 2 |
B. | 3 |
C. | 4 |
D. | 5 |
Answer» A. 2 |
25. |
When one object reference variable is assigned to another object reference variable then |
A. | a copy of the object is created. |
B. | a copy of the reference is created. |
C. | a copy of the reference is not created. |
D. | it is illegal to assign one object reference variable to another object reference variable. |
Answer» B. a copy of the reference is created. |
26. |
Which of the following is not a member of class? |
A. | Static function |
B. | Friend function |
C. | Const function |
D. | Virtual function |
Answer» B. Friend function |
27. |
How can we restrict dynamic allocation of objects of a class using new? |
A. | By overloading new operator |
B. | By making an empty private new operator. |
C. | By making an empty private new and new[] operators |
D. | By overloading new operator and new[] operators |
Answer» C. By making an empty private new and new[] operators |
28. |
Which of the following operators cannot be overloaded? |
A. | . (Member Access or Dot operator) |
B. | ?: (Ternary or Conditional Operator) |
C. | :: (Scope Resolution Operator) |
D. | All of the above |
Answer» D. All of the above |
29. |
Which of the following operators are overloaded by default by the compiler in every user defined classes even if user has not written? 1) Comparison Operator (==) 2) Assignment Operator (=) |
A. | Both 1 and 2 |
B. | Only 1 |
C. | Only 2 |
D. | None of the two |
Answer» C. Only 2 |
30. |
Which of the following operators should be preferred to overload as a global function rather than a member method? |
A. | Postfix ++ |
B. | Comparison Operator |
C. | Insertion Operator << |
D. | Prefix++ |
Answer» C. Insertion Operator << |
31. |
How C++ compiler does differ between overloaded postfix and prefix operators? |
A. | C++ doesn’t allow both operators to be overloaded in a class |
B. | A postfix ++ has a dummy parameter |
C. | A prefix ++ has a dummy parameter |
D. | By making prefix ++ as a global function and postfix as a member function. |
Answer» B. A postfix ++ has a dummy parameter |
32. |
Which of the following operator functions cannot be global? |
A. | new |
B. | delete |
C. | Conversion Operator |
D. | All of the above |
Answer» C. Conversion Operator |
33. |
Which of the following is true about this pointer? |
A. | It is passed as a hidden argument to all function calls |
B. | It is passed as a hidden argument to all non-static function calls |
C. | It is passed as a hidden argument to all static functions |
D. | None of the above |
Answer» B. It is passed as a hidden argument to all non-static function calls |
34. |
What is the use of this pointer? |
A. | When local variable’s name is same as member’s name, we can access member using this pointer. |
B. | To return reference to the calling object |
C. | Can be used for chained function calls on an object |
D. | All of the above |
Answer» D. All of the above |
35. |
Which of the following in Object Oriented Programming is supported by Function overloading and default arguments features of C++? |
A. | Inheritance |
B. | Polymorphism |
C. | Encapsulation |
D. | None of the above |
Answer» B. Polymorphism |
36. |
Output of the program?
|
A. | 10 |
B. | 0 |
C. | 20 |
D. | Compiler Error |
Answer» D. Compiler Error |
37. |
Output of following program?
|
A. | Compiler Error |
B. | 5 |
C. | 0 |
D. | 10 |
Answer» B. 5 |
38. |
Which of the following is true? |
A. | Static methods cannot be overloaded. |
B. | Static data members can only be accessed by static methods. |
C. | Non-static data members can be accessed by static methods. |
D. | Static methods can only access static members (data and methods) |
Answer» D. Static methods can only access static members (data and methods) |
39. |
If a function is friend of a class, which one of the following is wrong? |
A. | A function can only be declared a friend by a class itself. |
B. | Friend functions are not members of a class, they are associated with it. |
C. | Friend functions are members of a class. |
D. | It can have access to all members of the class, even private ones. |
Answer» C. Friend functions are members of a class. |
40. |
Which one of the following is correct, when a class grants friend status to another class? |
A. | The member functions of the class generating friendship can access the members of the friend class. |
B. | All member functions of the class granted friendship have unrestricted access to the members of the class granting the friendship. |
C. | Class friendship is reciprocal to each other. |
D. | There is no such concept. |
Answer» B. All member functions of the class granted friendship have unrestricted access to the members of the class granting the friendship. |
41. |
In C++, const qualifier can be applied to
|
A. | Only 1, 2 and 3 |
B. | Only 1, 2 and 4 |
C. | All |
D. | Only 1, 3 and 4 |
Answer» C. All |
42. |
How to create a dynamic array of pointers (to integers) of size 10 using new in C++? Hint: We can create a non-dynamic array using int *arr[10] |
A. | int *arr = new int *[10]; |
B. | int **arr = new int *[10]; |
C. | int *arr = new int [10]; |
D. | Not Possible |
Answer» B. int **arr = new int *[10]; |
43. |
Which of the following is true about new when compared with malloc:
|
A. | 1 and 3 |
B. | 2 and 3 |
C. | 1 and 2 |
D. | All 1, 2 and 3 |
Answer» D. All 1, 2 and 3 |
44. |
Predict the output?
|
A. | Compiler Error |
B. | 5 |
C. | Garbage Value |
D. | 0 |
Answer» A. Compiler Error |
45. |
Is it fine to call delete twice for a pointer?
|
A. | Yes |
B. | No |
C. | none |
D. | all |
Answer» B. No |
46. |
When the inheritance is private, the private methods in base class are __________ in the derived class (in C++). |
A. | inaccessible |
B. | accessible |
C. | protected |
D. | public |
Answer» A. inaccessible |
47. |
What happens when delete is used for a NULL pointer?
|
A. | Compiler Error |
B. | Run-time Crash |
C. | No Error |
D. | None |
Answer» C. No Error |
48. |
Which of the following is true about virtual functions in C++? |
A. | Virtual functions are functions that can be overridden in derived class with the same signature. |
B. | Virtual functions enable run-time polymorphism in a inheritance hierarchy. |
C. | If a function is ‘virtual’ in the base class, the most-derived class implementation of the function is called according to the actual type of the object referred to, regardless of the declared type of the pointer or reference. In non-virtual functions, the functions are called according to the type of reference or pointer. |
D. | All of the above |
Answer» D. All of the above |
49. |
Which of the following is true about pure virtual functions?
|
A. | Both 1 and 2 |
B. | Only 1 |
C. | Only 2 |
D. | Neither 1 nor 2 |
Answer» C. Only 2 |
50. |
What is the size of wchar_t in C++? |
A. | 2 |
B. | 4 |
C. | 2 or 4 |
D. | Based on the number of bits in the system |
Answer» D. Based on the number of bits in the system |
Done Studing? Take A Test.
Great job completing your study session! Now it's time to put your knowledge to the test. Challenge yourself, see how much you've learned, and identify areas for improvement. Don’t worry, this is all part of the journey to mastery. Ready for the next step? Take a quiz to solidify what you've just studied.