Search Contact information
University of Cambridge Home Department of Engineering
University of Cambridge >  Engineering Department >  computing help
next up previous
Next: Files Up: C++ Summary Previous: Structures

   
Classes

Classes are an extension of structures to allow a type to contain member functions as well as data components. The member functions are typically designed to perform useful operations on the data members of variables of that class.

public member functions and data members are available to any part of a program using the class, and can be used to provide the public interface to the class.

private member functions and data members are only visible to other member functions of the class, and can be used to hide the details of the implementation.

class FlexArray {

private:
   int      len;
   float    data[100];

public:
   void     clear();
   void     add(float item);
   float    operator--();    // remove last item and return it.
}

void FlexArray::clear()
{
   len = 0;
}

void FlexArray::add(float item)
{
   if (len < 100)
   {
      data[len] = item;
      len++;
   }
   else
   {
      // handle array overflow error
   }
}

float FlexArray::operator--()
{
   if (len > 0)
   {
      len--;
      return data[len];
   }
   else
   {
      // handle array underflow error
   }
}

FlexArray fa;

fa.clear;
fa.add(x);
float y = fa--;

The FlexArray:: prefix denotes that the function is a member of the FlexArray class.
© Cambridge University Engineering Dept
Information provided by Tim Love
2006-12-08