#ifndef _QUEUE_HPP_ #define _QUEUE_HPP_ #include #include "list.hpp" template class Queue { private: List q; public: T operator[](int i) { return q[i]; } int size() { return q.size(); } bool empty() { return size() ? false : true; } T enqueue(T e) { return q.firstInsert(e); } T dequeue() { return q.removeLast(); } T front() { return q.last()->data; } T back() { return q.first()->data; } }; #endif