home *** CD-ROM | disk | FTP | other *** search
/ C Programming Starter Kit 2.0 / SamsPublishing-CProgrammingStarterKit-v2.0-Win31.iso / tybc4 / class2.cpp < prev    next >
C/C++ Source or Header  |  1993-03-31  |  1KB  |  48 lines

  1. // Program demonstrates constructors and destructors
  2.  
  3. #include <iostream.h>
  4.  
  5. const unsigned MIN_SIZE = 4;
  6.  
  7. class Array
  8. {
  9.    protected:
  10.      double *dataPtr;
  11.      unsigned size;
  12.  
  13.    public:
  14.      Array(unsigned Size = MIN_SIZE);
  15.      ~Array()
  16.        { delete [] dataPtr; }
  17.      unsigned getSize() const
  18.        { return size; }
  19.      void store(double x, unsigned index)
  20.        { dataPtr[index] = x; }
  21.      double recall(unsigned index)
  22.        { return dataPtr[index]; }
  23. };
  24.  
  25. Array::Array(unsigned Size)
  26. {
  27.   size = (Size < MIN_SIZE) ? MIN_SIZE : Size;
  28.   dataPtr = new double[size];
  29. }
  30.  
  31. main()
  32. {
  33.   Array Ar1(10);
  34.   double x;
  35.   // assign data to array elements
  36.   for (unsigned i = 0; i < Ar1.getSize(); i++) {
  37.     x = double(i);
  38.     x = x * x - 5 * x + 10;
  39.     Ar1.store(x, i);                             
  40.   }  
  41.   // display data in the array element
  42.   cout << "Array Ar1 has the following values:\n\n";
  43.   for (i = 0; i < Ar1.getSize(); i++)
  44.     cout << "Ar1[" << i << "] = " << Ar1.recall(i) << "\n";
  45.   return 0;
  46. }
  47.  
  48.