Static03
Home ] Up ]

 

//static03.cpp
#include <iostream>
using namespace std;

class CSquare
  {
  public:
    static double Side;

    CSquare(void) {};
    void setSide(double S) { Side = S; }
    double getSide(void) { return Side; }
    double Area(void) { return Side * Side; }
  };

double CSquare::Side = 4.0;

void main(void)
  {
  cout << "sizeof(double)=" << sizeof(double) << endl;

  CSquare Sqr;

  cout << "sizeof(Sqr)=" << sizeof(Sqr) << endl;

  cout << "Square Characteristics";
  cout << "\nSide: " << CSquare::Side;
  cout << "\nArea: " << Sqr.Area() << endl;

  Sqr.setSide(8.0);

  cout << "\nSquare Characteristics";
  cout << "\nSide: " << CSquare::Side;
  cout << "\nArea: " << Sqr.Area();

  cout << "\n";

  CSquare Sqr2;
  cout << "Square Characteristics";
  cout << "\nSide: " << CSquare::Side;
  cout << "\nArea: " << Sqr2.Area() << endl;

  Sqr.setSide(4.0);

  cout << "Square Characteristics";
  cout << "\nSide: " << CSquare::Side;
  cout << "\nArea: " << Sqr2.Area() << endl;

  }