C++ Jsoncpp 常用技巧
Json对象循环遍历
代码样式
int main() {
Json::Value json_value = Json::Value(Json::objectValue);
json_value["object_one"] = 1;
json_value["object_two"] = 2;
json_value["object_three"] = 3;
json_value["object_a"] = 4;
Json::Value::Members mem = json_value.getMemberNames();
for (Json::Value::Members::iterator iter = mem.begin(); iter != mem.end(); ++iter) {
cout << *iter << " : " << json_value[*iter];
}
return 0;
}
运行结果
object_a : 4
object_one : 1
object_three : 3
object_two : 2
总结:使用迭代器去遍历Json对象时,会按照key的值排序进行输出,而不是按照添加key_value的顺序输出;
Array数组循环遍历
代码样式
int main() {
Json::Value json_value = Json::Value(Json::arrayValue);
json_value.append(1);
json_value.append(2);
json_value.append(4);
json_value.append(3);
json_value.append(5);
for (unsign