Qt中使用socket传递数据时,第一个想到的肯定是结构体。但结构体不能放QString,我的理解是QString不定长,所以双方socket接收无法判定接收数据长度。所以想到了QDataStream,但是好像也不能放QString?只能放一个,暂时不研究留着以后可能会用。还有方法是自己定义字符串用#之类隔开,读的时候根据#做分割,但据说这样只能传短的字符串不能传长的。
所以最后还是决定用struct,使用char数组传
QDataStream对QVector的序列化,有很完整的服务器客户端程序,类中运算符重载