#include <QtCore/QCoreApplication>
#include <QVariant>
#include <QtDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
QVariantMap map;
map["foo"] = QVariant(QVariantMap());
map["baz"] = "asdf";
qvariant_cast<QVariantMap>(map["foo"])["bar"] = "a";
qDebug() << qvariant_cast<QVariantMap>(map["foo"])["bar"].toString();
qDebug() << map["baz"].toString();
return a.exec();
}
我想分配給嵌套的QVariantMap中的QVariant。第一個qDebug()不輸出,但第二個輸出「asdf」如預期的那樣。我如何將嵌套變量映射中的「bar」鍵分配給一個值?分配嵌套QVariantMap
對於到達這裏在2016年讀者:使用Qt 5.1+和C++編譯器11這段代碼可以由更簡單,如[我的回答如下(http://stackoverflow.com/指出,問題/ 11090846 /分配到嵌套qvariantmap/37119292#37119292)。 –