ss="code"><pre>
/*! This is describing class Shape
 \author Bob
 */

class Shape {
public:
  Shape() {
    nshapes++;
  }
  virtual ~Shape() {
    nshapes--;
  };
   /** Important Variables x*/
  double  x;
   /** Important Variables y*/
   double y;
   /** Moves the Shape
   * @param dx delta on x
   * @param dy delta on y */
  void    move(double dx, double dy);
  /** \return the area */
  virtual double area(void) = 0;
  /** \return the perimeter */
  virtual double perimeter(void) = 0;
  static  int nsh