/home/hins/Qt5.9.8/5.9.8/gcc_64/include/QtCore/qbytearray.h:436: error: ‘QByteArray::operator QNoImplicitBoolCast() const’ is private
原因:用了uint8_t 给到(<<) QByteArray;但是qt没有这个运算符重载 。
解决办法:
在程序添加这几行代码
QByteArray &operator<<(QByteArray &l, quint8 r)
{
l.append(r);
return l;
}
QByteArray &operator<<(QByteArray &l, quint16 r)
{
return l <<quint8(r>>8)<<quint8(r);
}