#include "stack.h" #include int main() { Stack s; int tmp, success; s.Push(2, success); // build s s.Push(5, success); Stack t = s; // call copy constructor to make a copy // different from regular assignment cout << "s:\n"; s.GetStackTop(tmp, success); cout << tmp << endl; s.Pop(success); s.GetStackTop(tmp, success); cout << tmp << endl; s.Pop(success); cout << s.StackIsEmpty() << endl; cout << "t:\n"; t.GetStackTop(tmp, success); cout << tmp << endl; t.Pop(success); t.GetStackTop(tmp, success); cout << tmp << endl; t.Pop(success); cout << t.StackIsEmpty() << endl; return 0; }