Class C++ Tutorial

#include   
    using namespace std;       
  class Shape {  
  protected:  
    double x, y;  
  public:  
    void set_dim(double i, double j) {  
      x = i;  
      y = j;  
    }  
    virtual void show_area(void) {  
      cout << "No area computation defined ";  
      cout << "for this class.\n";  
    }  
  } ;  
       
  class triangle : public Shape {  
    public:  
      void show_area(void) {  
        cout << "Triangle with height ";  
        cout << x << " and base " << y;  
        cout << " has an area of ";  
        cout << x * 0.5 * y << ".\n";  
      }  
  };  
       
  class square : public Shape {  
    public:  
      void show_area(void) {  
        cout << "Square with dimensions ";  
        cout << x << "x" << y;  
        cout << " has an area of ";  
        cout << x *  y << ".\n";  
      }  
  };  
       
  main(void)  
  {  
    Shape *p;  
       
    triangle t; 
    square s;  
       
    p = &t;  
    p->set_dim(10.0, 5.0);  
    p->show_area();  
    p = &s;  
    p->set_dim(10.0, 5.0);  
    p->show_area();  
       
    return 0;  
  }