我试着使用这段代码将 QByteArray
转换为 std::vector<unsigned char>
:
unsigned char* buffer = (unsigned char*)byteArrayBuffer.constData();
std::vector<unsigned char>::size_type size = strlen((const char*)buffer);
std::vector<unsigned char> bufferToCompress(buffer, buffer + size);
但是,假设byteArrayBuffer
是填充有数据的QByteArray
,我认为在第unsigned char* buffer = (unsigned char*)byteArrayBuffer.constData();
行它不能很好地工作,因为byteArrayBuffer.size()
返回的值与bufferToCompress.size()
不同。
如何让它正常工作呢?