23 Lecture
CS304
Midterm & Final Term Short Notes
ACCESSING BASE CLASS MEMBER FUNCTIONS IN DERIVED CLASS
In object-oriented programming, a derived class inherits properties and behaviors from its base class. To access base class member functions in a derived class, the derived class can use the scope resolution operator (::) followed by the name of
Important Mcq's
Midterm & Finalterm Prepration
Past papers included
Download PDF
- In object-oriented programming, a derived class can access base class member functions using:
a) The dot operator (.)
b) The arrow operator (->)
c) The scope resolution operator (::)
d) None of the above
Answer: c) The scope resolution operator (::)
If a base class member function is declared as private, it can be accessed directly by the derived class.
a) True
b) False
Answer: b) False
In C++, if a base class member function is declared as protected, it can be accessed by:
a) The derived class and any other class
b) The derived class only
c) Any class within the same namespace
d) None of the above
Answer: b) The derived class only
When accessing a base class member function from a derived class, the derived class can modify the base class member function.
a) True
b) False
Answer: b) False
When a derived class defines a member function with the same name as a member function in the base class, it is called:
a) Method overloading
b) Method overriding
c) Method shadowing
d) None of the above
Answer: b) Method overriding
In C++, if a base class member function is virtual, it can be overridden by a member function in the derived class.
a) True
b) False
Answer: a) True
If a derived class inherits from multiple base classes, and both base classes have member functions with the same name, the derived class can access both functions using the scope resolution operator.
a) True
b) False
Answer: a) True
A derived class can access the private member variables of the base class using the scope resolution operator.
a) True
b) False
Answer: b) False
If a base class has a constructor with arguments, the derived class must call the base class constructor explicitly in its own constructor.
a) True
b) False
Answer: a) True
In C++, the order in which base classes are specified in a derived class declaration affects the order in which their constructors are called.
a) True
b) False
Answer: a) True
Subjective Short Notes
Midterm & Finalterm Prepration
Past papers included
Download PDF
What is the scope resolution operator and how is it used to access base class member functions in a derived class? Answer: The scope resolution operator (::) is used to specify the scope of a member function or variable. To access a base class member function in a derived class, the derived class can use the scope resolution operator followed by the name of the function and the base class name. Can a derived class access a private member function of its base class? If so, how? Answer: No, a derived class cannot access a private member function of its base class directly. It can only access the base class member function through a public or protected member function or by declaring the derived class as a friend class of the base class. How does method overriding work in a derived class? Answer: Method overriding is when a derived class defines a member function with the same name as a member function in the base class. The derived class can modify the behavior of the base class member function by providing a new implementation. When the derived class object calls the member function, the derived class implementation is executed. Can a derived class modify a base class member function? Answer: No, a derived class cannot modify a base class member function directly. It can only modify the behavior of the base class member function by providing a new implementation in the derived class. What is virtual function and how is it used in a derived class to override a base class member function? Answer: A virtual function is a member function in a base class that can be overridden by a member function in a derived class. To override a base class virtual function, the derived class should provide a new implementation of the virtual function with the same signature as the base class virtual function. How is the order in which base classes are specified in a derived class declaration related to the order in which their constructors are called? Answer: The order in which base classes are specified in a derived class declaration determines the order in which their constructors are called. The base class constructors are called in the order they are specified in the derived class declaration, regardless of the order in which they are inherited. Can a derived class access private member variables of its base class? Answer: No, a derived class cannot access the private member variables of its base class directly. It can only access them through public or protected member functions or by declaring the derived class as a friend class of the base class. What is the difference between public, private, and protected inheritance? Answer: Public inheritance makes public members of the base class accessible in the derived class, protected inheritance makes protected members of the base class accessible in the derived class, and private inheritance makes both public and protected members of the base class private in the derived class. How does a derived class call a base class constructor? Answer: A derived class can call a base class constructor explicitly in its own constructor by using the base class name followed by the constructor arguments in the member initializer list of the derived class constructor. Can a derived class have its own private member functions and variables in addition to those inherited from the base class? Answer: Yes, a derived class can have its own private member functions and variables in addition to those inherited from the base class.