circlequeue.h

来自「这是一个linux下的Shell.有命令历史和命令提示」· C头文件 代码 · 共 69 行

H
69
字号
#ifndef _CIRCLEQUEUE_#define _CIRCLEQUEUE_#include <string.h>struct Node_Queue{	Node_Queue(char* p,Node_Queue* nxt,Node_Queue* pr)	{		if(p)		{			ptr = new char[strlen(p)+1];			strcpy(ptr,p);		}		else			ptr = 0;		next = nxt;		pre  = pr;	};	Node_Queue* inset(char* p)	{		Node_Queue* o = new Node_Queue(p,this,0);		this->pre = o;		return o;	};	Node_Queue*  del(void)	{		Node_Queue* o = this->pre;		delete this;		return o;	};	~Node_Queue(void)	{		if(pre)			pre->next = this->next;		delete ptr;	};	char* ptr;	Node_Queue* next;	Node_Queue* pre;};class CircleQueue{public:	CircleQueue(int size=10);	void  initffile(char* filepath);	char* getCur(void);	void  incCur(void);	void  devCur(void);	void  inset(char* p);	void  setSize(int size);	void  show(int fid, bool reversFlag);private:	void del(void);private:		Node_Queue* head;	Node_Queue* tail;	Node_Queue* cur;	int num;	int num_cur;};#endif

⌨️ 快捷键说明

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