home *** CD-ROM | disk | FTP | other *** search
/ C++ for Dummies (3rd Edition) / C_FD.iso / CHAP26 / CHAP26_2.CPP < prev    next >
C/C++ Source or Header  |  1996-09-02  |  680b  |  44 lines

  1. // Chap26_2.cpp
  2. template <class T>
  3. class Array
  4. {
  5.   protected:
  6.     int nSize;
  7.     T*  ptArray;
  8.  
  9.   public:
  10.     Array(int nArraySize)
  11.     {
  12.         nSize = nArraySize;
  13.         ptArray = new T[nSize];
  14.     }
  15.  
  16.     int size()
  17.     {
  18.         return nSize;
  19.     }
  20.  
  21.     T& operator[](int nIndex)
  22.     {
  23.         if (nIndex < 0 || nIndex >= nSize)
  24.         {
  25.             throw "Range of Array object exceeded";
  26.         }
  27.         return ptArray[nIndex];
  28.     }
  29.  
  30. int main()
  31. {
  32.     // create an array of ints
  33.     Array<int> arrayOfInts(10);
  34.  
  35.     int i;
  36.     for (i = 0; i < arrayOfInts.size(); i++)
  37.     {
  38.         arrayOfInts[i] = i;
  39.     }
  40.     return 0;
  41. }
  42.  
  43. };
  44.