C++实现queue容器适配器

Posted Wecccccccc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++实现queue容器适配器相关的知识,希望对你有一定的参考价值。

代码如下:

#include <iostream>
#include <deque>

using namespace std;

template<typename T,typename Con = deque<T>>
class Queue
{
public:
	Queue(){}

	void Push(const T & x)
	{
		_c.push_back(x);
	}

	void Pop()
	{
		_c.pop_front();
	}

	T &Back()
	{
		return _c.back();
	}

	const T &Back() const
	{
		return _c.back();
	}

	T &Front()
	{
		return _c.front();
	}

	const T& Front() const
	{
		return _c.front();
	}

	size_t Size() const
	{
		return _c.size();
	}

	bool Empty() const
	{
		return _c.empty();
	}

private:
	Con _c;
};


int main()
{
	Queue<int>q;
	q.Push(1);
	q.Push(2);
	q.Push(3);
	q.Push(4);
	cout << q.Size() << endl;
	cout << q.Front() << endl;
	cout << q.Back() << endl;

	q.Pop();
	q.Pop();
	cout << q.Size() << endl;
	cout << q.Front() << endl;
	cout << q.Back() << endl;

	return 0;
}

测试结果:
在这里插入图片描述

以上是关于C++实现queue容器适配器的主要内容,如果未能解决你的问题,请参考以下文章

C++初阶第十二篇—stack和queue(stack和queue的常见接口的用法与介绍+priority_queue+容器适配器+仿函数+模拟实现)

C++——stack和queue的模拟实现

C++容器适配器实现队列Queue的各种功能(入队出队判空大小访问所有元素等)

C++初阶----deque(双端队列)+stack queue模拟实现

C++入门stack和queue适配器介绍+ priority_queue的模拟实现仿函数基本概念提及

[ C++ ] STL priority_queue(优先级队列)使用及其底层模拟实现,容器适配器,deque(双端队列)原理了解