假设你用这个类定义了一个对象dt,那么可以用
send(sock, &dt, sizeof(dt), 0)
来一次性发送。
接收端,定义一个指针 data *pdt = new dt; 用
recv(sock, pdt, sizeof(dt), 0)
来接收。
可以实现,跟结构体差不多。我试过了,有问题hi我哈~ 代码如下: 服务端: class data { public: int mout; int day; int year; }; data a={9,10,2010}; char *buf = (char*)(&a);//把对象a的地址传过去 int len = sizeof(class data); send(SOCKET s,char* buf,int len); 客户端: class data { public: int mout; int day; int year; } data b; recv_loop(SOCKET s,(char*)(&b),sizeof(class data)); cout<<b.mout<<'\n'<<b.day<<'\n'<<b.year<<endl;
可以自己定义类,在服务端和客户端都定义即可