📄 cyclebuf.h
字号:
//////////////////////////////////////////////////////////////////////
// CycleBuf.h
// 循环缓冲区,每次输入的长度必须小于m_nCapacity成员
// 否则当m_Head==m_Tail表示空缓冲
//////////////////////////////////////////////////////////////////////
#if !defined(CCYCLEBUF_H__)
#define CCYCLEBUF_H__
#include <iosfwd>
namespace mylib{
class CCycleBuf
{
public:
CCycleBuf(int Capacity=16);
CCycleBuf(const CCycleBuf &cyc);
virtual ~CCycleBuf();
CCycleBuf& operator=(const CCycleBuf &cyc);
private:
int m_nCapacity;
int m_nHead;
int m_nTail;
char *m_buf;
public:
int GetCapacity() const;
int GetUsedLen() const;
int GetFreeLen() const;
void Clear();
bool Input(const char *BufIn,int len);
bool Output(char *BufOut,int len);
bool Resize(int len);
friend std::ostream& operator << (std::ostream& os, const CCycleBuf& cyc);
private:
void Swap(CCycleBuf &cyc);
};
}//end of mylib
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -