如何创建和填充 jsoncpp 数组 (jsoncpp.sourceforge)

How to create and populate a jsoncpp array (jsoncpp.sourceforge)

本文关键字:jsoncpp 何创建 数组 sourceforge 填充 创建      更新时间:2023-10-16

我正在尝试创建一个json cpp数组,并在std::vector中填充数据。

我的代码看起来像这样

void
Box_20::BuildCommitUploadPostData(const PartInfoColl& partColl)
{
Json::Value parts;
parts["parts"] = Json::arrayValue;
int idx = 0;
for (const auto& p : partColl) {
Json::Value partInfo;
partInfo["part_id"] = p.partId;
partInfo["offset"] = p.offset;
partInfo["size"] = p.size;
parts[idx]["part"] = partInfo;
idx++;
}
/// do more stuff here
}

然而,当我运行它时,它会爆炸。

我可以;不要看我在这里做错了什么。

这奏效了。

void DoSOmeJsonStuff(const PartInfoColl& partColl)
{
Json::Value parts;
int idx = 0;
for (const auto& p : partColl) {
Json::Value partInfo;
partInfo["part_id"] = p.partId;
partInfo["offset"] = p.offset;
partInfo["size"] = p.size;
parts[idx]["part"] = partInfo;
idx++;
}
Json::Value root;
root["parts"] = parts;
/... 
}