outdata.h

来自「此程序对网路传输数据的传输是个很好的东东,其主要是对数据进行压入和压出作了封装,」· C头文件 代码 · 共 60 行

H
60
字号
// OutData.h: interface for the OutData class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_OUTDATA_H__E0E6F237_88F2_41C7_8C20_A9539455BCAA__INCLUDED_)
#define AFX_OUTDATA_H__E0E6F237_88F2_41C7_8C20_A9539455BCAA__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class OutData  
{
public:
	OutData(char* pdate,unsigned int len)
	{
		cursor = data = (char*) pdate;
		datalen = len;
	};

	char* GetData(unsigned int &uiLenght)
	{
		uiLenght = datalen - (cursor - data);
		return cursor;
	};

	OutData &operator >>(unsigned int &ui)
	{
		ui = 0;
		if (cursor <= data + datalen - sizeof(ui))
		{
			ui = *(unsigned int *) cursor;
			cursor += sizeof(ui);
		}
		return *this;
	};

	OutData &operator >>(unsigned long &ul)
	{
		ul = 0;
		if (cursor <= data + datalen - sizeof(ul))
		{
			ul = *(unsigned long *) cursor;
			cursor += sizeof(ul);
		}
		return *this;
	};

	virtual ~OutData();

private:

protected:
	char *data;
	char *cursor;
	unsigned int datalen;
};

#endif // !defined(AFX_OUTDATA_H__E0E6F237_88F2_41C7_8C20_A9539455BCAA__INCLUDED_)

⌨️ 快捷键说明

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