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

📄 queue.cpp

📁 操作系统里面的进程调度
💻 CPP
字号:
// Queue.cpp: implementation of the Queue class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "JinChengDiaodu.h"
#include "Queue.h"
#include "programe.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

Queue::Queue()
{
    front=last=NULL;
	corr_len=0;
}
Queue::Queue(int SjianPian,int QNu)
{
	front=last=NULL;
	corr_len=0;
    ShiJianPian=SjianPian;
	QuNumber=QNu;
} 
int Queue::EnQueue(programe *item)
{ 
	item->SetSJPian(ShiJianPian);
	item->QueuNumber=QuNumber;
  /*	char * temp;
	temp=new char[10];
	itoa(item->QueuNumber,temp,10);
	MessageBox(NULL,"Enqueue",temp,1);*/
	item->link=NULL;
  if(!isEmpty())
  {
    last->link=item;
	last=item;
	corr_len++;
	return 1;
  }
  else 
  {
	  front=last=item;
	  corr_len++;
	  return 0;
  }
  //cout<<"--------停在便道的"<<corr_len<<"位置-------"<<endl;
}
programe* const Queue::DeQueue()
{
    programe *temp=front;
	if(isEmpty())  //判断是否为空,对空则异常退出
	{
		return NULL;
	}//cout<<"外面没有车了"<<endl;
	else
	{
	   front=front->link;
	   temp->link=NULL;  //将要取出的结点的指针取空
	   corr_len--;
	   if(corr_len==0)
	   {
		   front=last=NULL;
	   }
	}
	return temp;
}
int const Queue::get_corr()
{
	return corr_len;
}
Queue::~Queue()
{
  while(front!=NULL)
  {
	  programe *temp=front;
	  front=front->link;
	  delete temp;
  }
}

bool Queue::isEmpty()
{
    if(front==last &&last==NULL)
	{
		return true;
	}
	else
	{
		return false;
	}
}

int Queue::getSJPian()
{
   return ShiJianPian;
}

⌨️ 快捷键说明

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