struct CMD_GF_LandlordGameOver
{
std::vector<DT_CHAR> dwkindlist; //三个玩家的输赢情况,0,输,1赢
std::vector<DT_INT32> dwllscorelist; //三个玩家的输赢数(不计台费)
CMD_GF_LandlordGameOver(){}
DT_DWORD Write(char *buf)
{
char *p = buf;
*((DT_DWORD *)p) = dwkindlist.size(); p+=sizeof(DT_DWORD);
for ( DT_DWORD i = 0; i < dwkindlist.size(); i ++ )
{
*((DT_CHAR *)p) = dwkindlist[i]; p+=sizeof(DT_CHAR);
}
*((DT_DWORD *)p) = dwllscorelist.size(); p+=sizeof(DT_DWORD);
for ( DT_DWORD i = 0; i < dwllscorelist.size(); i ++ )
{
*((DT_INT32 *)p) = dwllscorelist[i]; p+=sizeof(DT_INT32);
}
return p - buf;
}
DT_DWORD Read(const char *buf)
{
const char *p = buf;
DT_DWORD dwkindlistSize = *((DT_DWORD *)p); p+=sizeof(DT_DWORD);
for ( DT_DWORD i = 0; i < dwkindlistSize; i ++ )
{
dwkindli
c++可变长度结构体串行化&解析数据
最新推荐文章于 2024-06-27 17:44:25 发布
本文探讨了如何处理C++中的可变长度结构体,包括如何进行串行化以便发送数据,以及如何解析接收到的串行化数据,重点在于动态大小的数据结构的处理和通信效率。
摘要由CSDN通过智能技术生成