#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()は何も出力しませんが、2番目の出力は期待どおりに "asdf"を出力します。ネストされた変数マップの "bar"キーをどのように値に割り当てるのですか?入れ子になったQVariantMapに割り当てる
ここでは2016年に到着する読者の皆さんに:Qt 5.1+とC++ 11コンパイラを使用すると、このコードは[私の答えは以下のようになります](http://stackoverflow.com/質問/ 11090846/assigning-to-nested-qvariantmap/37119292#37119292)。 –