a547981661
a547981661
采纳率100%
2017-06-15 08:25 阅读 2.4k
已采纳

Qt QList<T>和QDataStream一起使用问题

发送:

            QList<MyVariant> friend_List;
            QList<MyGrpupVariant> group_List;        
            db->getFriendInfo(id,friend_List);
            db->getUserGroup(id,group_List);
            msgType = "LOGIN_SUCCEED";
            out << (quint16)0 << msgType<<userName<<friend_List<<group_List;
        }
        out.device()->seek(0);
        out << (quint16)(block.size() - sizeof(quint16));
        tcpSocket->write(block);

接受:

    QByteArray block = tcpSocket->readAll();
    QDataStream in(&block,QIODevice::ReadOnly);
    quint16 dataGramSize;
    QString msgType;
    in >> dataGramSize >> msgType;
    qDebug()<<msgType;
    if(msgType == "LOGIN_SUCCEED")
    {
        QString userName;
        QList<myVariant> friend_list;
        QList<MyGrpupVariant> group_list;
        in>>userName>>friend_list>>group_list;
        emit login_succeed(userName,friend_list,group_list);
    }

    打印出来friend_list为空
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

1条回答 默认 最新

  • 已采纳
    what951006 小乌龟在大乌龟背上 2017-06-16 11:06

    QList不用指定类型吗?

    点赞 评论 复制链接分享

相关推荐