#include #include #include "queue.h" #include "queue.h" // test inclusion guard void try_pop_empty(Queue& q) { try { q.pop(); } catch (std::exception& e) { std::cerr << e.what() << std::endl; } } int main() { Queue q; std::string name; try_pop_empty(q); while ( std::cin >> name ) { q.push(name); } while ( ! q.empty() ) { std::cout << q.pop() << ' '; } try_pop_empty(q); for (int i{0}; i < 5; ++i) { q.push("The devil is in the detail."); q.pop(); } try_pop_empty(q); const Queue cq; cq.empty(); return 0; }