fifoqueu.h
来自「嵌入式DOS系统上位升级程序FileUpgrade, 需配合本人上传的FileU」· C头文件 代码 · 共 45 行
H
45 行
//CFifo.h 实现先入先出的队列类
//#include"FifoQueu.h"
#ifndef _CLASS_CFIFOQUEUE_
#define _CLASS_CFIFOQUEUE_
template <class T,unsigned long int MaxBuf> class CFifoQueue
{
public:
CFifoQueue()
{
mHead=mTail=0;
}
void operator +=(T Tdata)
{
mData[mTail++]=Tdata;
if(mTail==MaxBuf) mTail=0;
if(mHead==mTail)
{ mHead++;
if(mHead==MaxBuf) mHead=0;
}
}
void AddData(T Tdata)
{
mData[mTail++]=Tdata;
if(mTail==MaxBuf) mTail=0;
if(mHead==mTail)
{ mHead++;
if(mHead==MaxBuf) mHead=0;
}
}
char GetData(T &Tdata)
{
if(mHead==mTail) return 0;
Tdata=mData[mHead++];
if(mHead==MaxBuf) mHead=0;
return 1;
}
void Empty()
{
mHead=mTail=0;
}
private:
T mData[MaxBuf];
unsigned long int mHead,mTail;
};
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?