我用socket来做通信,其中的数据结构比较多,我想把要发送的的数据打成一个包,然后在发送。比如:class CData
{
public:
CData();
virtual ~CData();
int nType; //包的类型,1=TAG1 ,2 =TAG2 ,3....
char *buffer; //当前的缓冲
int nsize; //当前缓冲的大小
void PutToBuffer(packet * p); //把nType类型的包压到buffer中
packet * GetFromBuffer();
};typedef struct tag1 {
char id[8];
char sex[2];
char naem[20];
char message[256];
}TAG1;typedef struct tag2 {
char AA[16];
char BB[16];
char CC[256];
}TAG2;现在如何写成员函数 void PutToBuffer(packet * p)和packet * GetFromBuffer();。或者有更好的方法。
目的是为了 send(socket,m_buffer.buffer,m_buffer.nSize);
{
public:
CData();
virtual ~CData();
int nType; //包的类型,1=TAG1 ,2 =TAG2 ,3....
char *buffer; //当前的缓冲
int nsize; //当前缓冲的大小
void PutToBuffer(packet * p); //把nType类型的包压到buffer中
packet * GetFromBuffer();
};typedef struct tag1 {
char id[8];
char sex[2];
char naem[20];
char message[256];
}TAG1;typedef struct tag2 {
char AA[16];
char BB[16];
char CC[256];
}TAG2;现在如何写成员函数 void PutToBuffer(packet * p)和packet * GetFromBuffer();。或者有更好的方法。
目的是为了 send(socket,m_buffer.buffer,m_buffer.nSize);
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货