Listing 1 float_array class definition

// fa1.h - a dynamic array of float using a subscripting 
// object

#include <iostream.h>

class fa_index
       {
       friend class float_array;
public:
       fa_index &operator=(float f);
       operator float();
private:
       fa_index(float_array *f, size_t i);
       float_array *fa;
       size_t ix;
       };

class float_array
       {
       friend class fa_index;
public:
       float_array(size_t n = 0);
       float_array(const float_array &fa);
       ~float_array();
       float_array &operator=(const float_array &fa);
       float operator[](size_t i) const;
       fa_index operator[](size_t i);
       size_t length() const;
private:
       void extend(size_t i);
       float *array;
       size_t len;
       };

ostream &operator<<(ostream &os, const float_array &fa);

inline size_t float_array::length() const
       {
       return len;
       }
/* End of File */