stack< T > Class Template Reference


Public Member Functions

 stack ()
 ~stack ()
int size () const
top () const
T & top ()
void pop ()
void push (T a)

Detailed Description

template<class T>
class stack< T >

Definition at line 20 of file stack.icc.


Constructor & Destructor Documentation

template<class T>
stack< T >::stack (  )  [inline]

Definition at line 26 of file stack.icc.

00026 :  k(0), max_size(20), v(new T[20]) {}

template<class T>
stack< T >::~stack (  )  [inline]

Definition at line 27 of file stack.icc.

00027 { delete [] v; }  


Member Function Documentation

template<class T>
void stack< T >::pop (  )  [inline]

Definition at line 32 of file stack.icc.

00032 { k--; }

template<class T>
void stack< T >::push ( a  )  [inline]

Definition at line 33 of file stack.icc.

00033                    {
00034     if (k == max_size) {
00035       T * w     = v;
00036       max_size *= 2;
00037       v         = new T[max_size];
00038       for (int i=0; i<k; i++) v[i] = w[i];
00039       delete [] w;
00040     }
00041     v[k++] = a;
00042   }

template<class T>
int stack< T >::size (  )  const [inline]

Definition at line 29 of file stack.icc.

00029 { return k; }

template<class T>
T& stack< T >::top (  )  [inline]

Definition at line 31 of file stack.icc.

00031 { return v[k-1]; }

template<class T>
T stack< T >::top (  )  const [inline]

Definition at line 30 of file stack.icc.

00030 { return v[k-1]; }


The documentation for this class was generated from the following file:
Generated on Mon May 27 17:54:03 2013 for Geant4 by  doxygen 1.4.7