Westonci.ca is the premier destination for reliable answers to your questions, brought to you by a community of experts. Discover a wealth of knowledge from professionals across various disciplines on our user-friendly Q&A platform. Our platform provides a seamless experience for finding reliable answers from a network of experienced professionals.

If a base class pointer, p, points to a derived class instance, and both base and derived classes have a method void doIt() which takes no parameters, then p->doIt() will invoke the derived class version:__________

a. only if both the base class method and the derived class method are declared virtual.
b. if the derived class method is declared virtual, but the base is not declared virtual.
c. if the base class method is declared virtual, even if the derived class method is not declared virtual.

Sagot :

Answer:

a. only if both the base class method and the derived class method are declared virtual.

Explanation:

The parameters will invoke derived class version, because objected pointed to determine which method is called. The base and derived class are declared virtual Overriding feature allows subclass and derived class to provide implementation.