#include <stdio.h> #include "Stack.h" Stack::Stack() { head = NULL; } Stack::~Stack() { while (head != NULL) { StackElem *tmp = head; head = head->next; delete tmp; } } void Stack::Push(int x) { head = new StackElem(x, head); } int Stack::Pop() { int value = head->data; StackElem *oldTop = head; head = head->next; delete oldTop; return value; }