首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在QJsonObject中修改QJsonArray?

在QJsonObject中修改QJsonArray?
EN

Stack Overflow用户
提问于 2021-01-28 20:17:29
回答 1查看 81关注 0票数 0

如何修改已经在QJsonObject结构中的数组?

代码语言:javascript
复制
QJsonObject data = QJsonDocument::fromJson(QByteArrayLiteral("{\"array\":[1,2,3]}")).object();

// TODO: Something to append numbers to the 1,2,3 array?

// This doesn't work: 
data["array"].toArray().append(4);

qInfo() << data; // QJsonObject({"array":[1,2,3]}), without the 4th element

toArray()似乎创建了一个副本,而不是返回一个引用

EN

回答 1

Stack Overflow用户

发布于 2021-01-28 22:07:07

我认为问题在于toArray()返回的是数组的副本,而不是对现有数组的引用。因此,您的代码正在尝试修改副本,但最终没有任何效果。你应该能够做一些类似这样的事情:

代码语言:javascript
复制
QJsonArray arrayCopy = data["array"].toArray();
arrayCopy.append(4);
data["array"] = arrayCopy;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65936961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档