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 + -
显示快捷键?