我正在使用 Qjson 解析从 Web 服务返回的 json 对象。我一直在处理一系列复杂的对象。
在第一层,Web 服务返回一个由“error”、“id”和“return”组成的映射。如果没有错误,我可以使用
nestedMap = m_jsonObject["result"].toMap();
group = new Group();
group->Caption = nestedMap["Caption"].toString();
group->CollectionCount = nestedMap["CollectionCount"].toInt();
我什至可以使用
group->ModifiedOn = nestedMap["ModifiedOn"].toMap()["Value"].toDateTime();
我有一个名为“Elements”的对象,它由 29 个键值对组成。Web 服务正在返回这些“元素”的数组,我无法找到解析它的正确方法。在头文件中,元素的容器定义为
QList<GroupElement> Elements;
线
group->Elements = nestedMap["Elements"].toList();
导致编译器抛出错误 'error: no match for 'operator=' in '((MyClass*)this)->MyClass::group->Group::Elements = QVariant::toMap() const()'
我想学习正确的语法来将此元素放入类中。