qint32 keyValue = 1;
DBT sdbckey;
DBT sdbcdata;
::memset(&sdbckey, 0, sizeof(DBT));
::memset(&sdbcdata, 0, sizeof(DBT));
QByteArray aKey = QByteArray();
QBuffer buffer(&aKey);
buffer.open(QIODevice::WriteOnly);
QDataStream s(&buffer);
if (!QMetaType::save(s, meta_id_key, &keyValue))
qCritical("QMetaType::save failed. is your key registered with the QMetaType?");
buffer.close();
sdbckey.size = aKey.size();
sdbckey.data = ::malloc(aKey.size());
::memcpy(sdbckey.data, aKey.data(), aKey.size());
qint32 v = 1;
DBT dbckey;
DBT dbcdata;
::memset(&dbckey, 0, sizeof(DBT));
::memset(&dbcdata, 0, sizeof(DBT));
dbckey.data = &v;
dbckey.size = sizeof(qint32);
Как я понимаю результат должен быть один и тот же в dbckey.data и sdbckey.data.