STL-queue模拟实现
#include<list> #include<assert.h> #include<deque> #include<iostream> using std::cout; using std::endl; using std::cin; namespace test { //template<class T, class Containers = std::list<T>> template<class T, class Containers = std::deque<T> > class queue { private: Containers _con; public: void push(const T& x) { _con.push_back(x);//尾插 } void pop() { _con.pop_front();//头删 } const T& front() { return _con.front(); } const T& back() { return _con.back(); } bool empty() { return _con.empty(); } size_t size() { return _con.size(); } }; void test_quque1() { queue<int> q; q.push(1); q.push(2); q.push(3); while (!q.empty()) { std::cout << q.front() <<" "; q.pop(); } } }
本文来自博客园,作者:HJfjfK,原文链接:https://www.cnblogs.com/DSCL-ing/p/18038576