Monday, February 25, 2013

C++ Snippet Output

#include <stdio.h>
using namespace std;

class A
{
    public :
    virtual int get()
    {
        printf("in A\n");
        return 0;
    }
};

class B:public A
{

};

int main()
{
    A a;
    B b;
  
    a.get();  //in A
    b.get();  //in A
 
    A* aptr;
    aptr = &b;
    aptr->get();
   

   return 0;


O/P: 
in A
in A
in A


*********************************************************************************** 
#include <stdio.h>
using namespace std;

class A
{
    public :
    virtual int get()
    {
        printf("in A\n");
        return 0;
    }
};

class B:public A
{
    public:
    virtual int get()
    {
        printf("in B\n");
        return 0;
    }
};

int main()
{
    A a;
    B b;
  
    a.get();  //in A
    b.get();  //in B
 
    A* aptr;
    aptr = &b;
    aptr->get(); // with virtual get() of Class A => o/p: in B
                   // without virtual get() of Class A => o/p: in A

    return 0;


O/P: 
in A
in B
in B

No comments:

Post a Comment