为什么QBitArray的大小保持为零?我使用的是Qt 5.0.2。
QByteArray bytes(4,'b'); // four bytes
QBitArray bits;
QDataStream stream(&bytes, QIODevice::ReadWrite);
stream >> bits;
qDebug() << bytes.size() << bits.size();
答案 0 :(得分:2)
从QDataStream
阅读时,它希望数据采用某种格式,如http://qt-project.org/doc/qt-5.0/qtcore/datastreamformat.html所述。在流媒体QBitArray
的情况下,这是:
The array size (quint32) The array bits, i.e. (size + 7)/8 bytes
如果不是这种情况,操作将失败 - 您可以检查QDataStream::status()
以检测错误。