【发布时间】:2020-09-01 04:05:30
【问题描述】:
我想创建以下 Json 对象
{
"name":"abc",
"property1"=[2010, 2013, 2015],
"property2"=["str1, "str2", str3"],
"property3"=[true, false]
}
property1, property2, property3 基本上是一个数组,但具有不同的元素。 目前我正在通过以下方式创建:
document.AddMember("property1", Value(kArrayType), allocator);
document.AddMember("property2", Value(kArrayType), allocator);
document.AddMember("property3", Value(kArrayType), allocator);
然后我遍历列表并将对象中的值通过:
for (auto& iter: object_info_list) {
document["property1"].PushBack(iter->property1, allocator); //int value
document["property2"].PushBack(iter->property2, allocator); // string value
document["property3"].PushBack(iter->property3, allocator); // bool value
}
但是上面的语句也推送了所有的值(重复)。有没有办法只添加不同的值(比如在 c++ 中设置)
提前谢谢你
【问题讨论】:
-
为什么不将
list_of_working_years设为std::set? -
@Wander3r 更新了问题。