Takze ak to fakt chces spojkami tak napr. takto:
Staci ti drzat si jedinu privatnu premennu StackPointer, nepotrebujes nic viac.
Na zaciatku StackPointer=NULL, t.j. stack je prazdny.
Potom pri Push vytvaras novu strukturu alebo objekt ktory bude obsahovat data a pointer na predch.polozku.
V tom pripade Push bude vypadat asi takto (schematicky, spravnu syntax si urob sam):
new(novyobjekt);
novyobjekt->data = data;
novyobjekt->previous = StackPointer;
StackPointer = novyobjekt;
a Pop bude vypadat asi takto:
if(StackPointer == NULL) error;
objekt_na_deletovanie = StackPointer;
navratove_data = StackPointer->data;
StackPointer = StackPointer->previous;
delete(objekt_na_deletovanie);
return(navratove_data);
Je to jasne ci nie?