[ create a new paste ] login | about

Link: http://codepad.org/geE5ApD7    [ raw code | output | fork ]

C++, pasted on Jan 20:
#include <iostream>

class Base{
  private:
   int a;
  public:
   Base(int value):a(value){ 
  }

  virtual void print(){
   std::cout<<"In base "<<a<<std::endl;
  }
};

class Derived:public Base{
  private:
   int b;
  public:
   Derived(int valD, int valB):Base(valB),b(valD){ 
  }

  virtual void print(){
   std::cout<<"In Derived "<<b<<std::endl;
  }
};

class Derivedderived:public Derived{
  private:
   int dd;
  public:
   Derivedderived(int valDD, int valD, int valB):Derived(valD,valB),dd(valDD){ 
  }

  virtual void print(){
   std::cout<<"In DerivedDerived "<<dd<<std::endl;
  }
};

int main(){
 Base* b = new Base(5);
 Derived* d = new Derived(10,11);
 Derivedderived* dd = new Derivedderived(12,10,11);
 b->print();
 d->print();
 dd->print();
 ((Derived*)dd)->print();
 return 0;
}


Output:
1
2
3
4
In base 5
In Derived 10
In DerivedDerived 12
In DerivedDerived 12


Create a new paste based on this one


Comments: