Skip to content
Related Articles

Related Articles

Improve Article
C++ | Virtual Functions | Question 3
  • Difficulty Level : Medium
  • Last Updated : 12 Oct, 2013

Output of following program




#include<iostream>
using namespace std;
  
class Base
{
public:
    virtual void show() { cout<<" In Base \n"; }
};
  
class Derived: public Base
{
public:
    void show() { cout<<"In Derived \n"; }
};
  
int main(void)
{
    Base *bp, b;
    Derived d;
    bp = &d;
    bp->show();
    bp = &b;
    bp->show();
    return 0;
}

(A)

In Base 
In Base 

(B)

In Base 
In Derived

(C)

In Derived
In Derived

(D)

In Derived
In Base 


Answer: (D)

Explanation: Initially base pointer points to a derived class object. Later it points to base class object,

Quiz of this Question

Want to learn from the best curated videos and practice problems, check out the C Foundation Course for Basic to Advanced C.
My Personal Notes arrow_drop_up
Recommended Articles
Page :