alex a86682531f Patch level : xx.54
Files correlati     :
Ricompilazione Demo : [ ]
Commento            : Riportata la versione 01.05 patch 354


git-svn-id: svn://10.65.10.50/trunk@8178 c028cbd2-c16b-5b4b-a496-9718f37d4682
1999-05-24 13:34:11 +00:00

52 lines
1.3 KiB
C++
Executable File

#ifndef __STACK_H
#define __STACK_H
#ifndef __ARRAY_H
#include <array.h>
#endif
// @doc EXTERNAL
// @class TStack | Classe per la gestione dello stack a basso livello
//
// @base public | TObject
class TStack : public TObject
// @author:(INTERNAL) Alex
// @access:(INTERNAL) Private Member
{
protected:
// @cmember:(INTERNAL) Dati dello stack
TArray _data;
// @cmember:(INTERNAL) Puntatore alla cima dello stack
int _sp;
// @access Public Member
public:
// @cmember Ritorna il puntatore allo stack
int count() const
{ return _sp; }
// @cmember Aggiunge un oggetto sullo stack
void push(const TObject& o);
// @cmember Aggiunge un oggetto sullo stack
void push(TObject* o);
// @cmember Ritorna il primo oggetto sulla cima dello stack
TObject& pop();
// @cmember Ritorna l'oggetto ad una data profondita' nello stack
TObject& peek(int depth = 0) const;
// @cmember Distrugge l'intero stack
void destroy();
// @cmember Distrugge l'oggetto alla base dello stack
bool destroy_base();
// @cmember Costruttore. Chiama il costruttore di <c TArray>
TStack(int size = 16);
// @cmember Costruttore. Chiama il costruttore di <c TArray>
TStack(const TStack& stack);
// @cmember Distruttore. Chiama il distruttore di <c TArray>
virtual ~TStack() { }
};
#endif