// Prog: stack_test.cpp // test the class stack from stack.h and stack.cpp #include #include "stack.h" int main() { ifmp::stack s1; s1.push (1); s1.push (3); s1.push (2); std::cout << s1 << "\n"; // 2 3 1 ifmp::stack s2 = s1; std::cout << s2 << "\n"; // 2 3 1 s1.push (5); s1.push (6); std::cout << s1 << "\n"; // 6 5 2 3 1 std::cout << s2 << "\n"; // 2 3 1 ifmp::stack s3; s3 = s1; std::cout << s3 << "\n"; // 6 5 2 3 1 s1.push (7); std::cout << s1 << "\n"; // 7 6 5 2 3 1 std::cout << s3 << "\n"; // 6 5 2 3 1 s3.pop (); std::cout << s3 << "\n"; // 5 2 3 1 std::cout << s3.top() << "\n"; // 5 std::cout << s3.empty() << "\n"; // 0 for (int i=0; i<4; ++i) s3.pop(); std::cout << s3.empty() << "\n"; // 1 } // g++ -Wall -pedantic-errors stack.cpp stack_test.cpp -o stack_test