在C++中,定义一个QJsonObject head,定义一个结构体Head,如何把结构体中的内容,insert进入QJsonObject head中
时间: 2024-05-15 12:14:22 浏览: 42
根据json内容生成C++结构体定义
可以通过QJsonObject的insert()函数将结构体中的内容插入到QJsonObject中。具体实现如下:
```c++
#include <QJsonDocument>
#include <QJsonObject>
struct Head {
int id;
QString name;
bool flag;
};
int main()
{
Head headStruct = { 1, "test", true };
QJsonObject headJson;
headJson.insert("id", headStruct.id);
headJson.insert("name", headStruct.name);
headJson.insert("flag", headStruct.flag);
QJsonDocument doc(headJson);
qDebug() << doc.toJson(QJsonDocument::Indented);
return 0;
}
```
以上代码中,我们定义了一个Head结构体,并初始化了结构体变量headStruct。然后定义了一个QJsonObject headJson,通过insert()函数将结构体中的内容插入到headJson中。最后,我们将headJson转换成QJsonDocument,并调用toJson()函数输出到控制台中。
运行以上代码,输出结果如下:
```json
{
"flag": true,
"id": 1,
"name": "test"
}
```
可以看到,结构体Head中的内容已经成功插入到QJsonObject headJson中。
阅读全文