⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fcq.cpp

📁 固定容量队列
💻 CPP
字号:
#include "FCQ.H"
#include <iostream>
using namespace std;

FixCapQue::	FixCapQue (int cap)
{
	capacity = cap;
	currentNum = 0;
	que = new float[capacity];
	int i;
	for (i=0;i<capacity;i++)
	{
		que[i] = 0.0f;
	}
	head = tail = 0;
}

// FixCapQue::~FixCapQue ()
// {
// 	if (NULL != que)
// 	{
// 		delete []que;
// 	}
// 
// }

void FixCapQue::pop()
{
	if (0 == currentNum)
	{
		cout<<"No data!"<<endl;
		return;
	}
	head += 1;
	head = head%capacity;
	--currentNum;
}

void FixCapQue:: push(float data)
{
	if (capacity == currentNum)
	{
		head += 1;
		head %= capacity;
		*(que+tail) = data;
		tail += 1;
		tail %= capacity;
	}
	else
	{
		*(que+tail) = data;
		tail += 1;
		tail %= capacity;
		++currentNum;		
	}
}

float FixCapQue::get()
{
	return * (que+head);
}

void FixCapQue::displayAllData()
{
	if (currentNum > 0)
	{
		int i = head;
		do 
		{
			cout<< que[i]<<" ";
			i++;
			i %= capacity;
		} while( i!= tail);
	}
	
	cout<<endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -