Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/150.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在字符串数组中循环的RapidJSON?_C++_Json_Loops_Rapidjson - Fatal编程技术网

C++ 在字符串数组中循环的RapidJSON?

C++ 在字符串数组中循环的RapidJSON?,c++,json,loops,rapidjson,C++,Json,Loops,Rapidjson,我正在使用RapidJSON解析JSON数据,但我不知道如何循环遍历以下成员: { "members":{ "0":{ "template":"this is member 1" }, "1":{ "template":"this is member 2" } } } 我尝试了以下方法 e_doc[“members”][iString][“template”].GetString() 在循环中,将循环索引(i)转换为字符串,但它

我正在使用RapidJSON解析JSON数据,但我不知道如何循环遍历以下成员:

{

"members":{
    "0":{
        "template":"this is member 1"
    },
    "1":{
        "template":"this is member 2"
    }
}
}
我尝试了以下方法
e_doc[“members”][iString][“template”].GetString()
在循环中,将循环索引(i)转换为字符串,但它无法将其识别为字符串

其工作原理如下:

printf("%s", e_doc["members"]["0"]["template"].GetString());
printf("%s", e_doc["members"]["1"]["template"].GetString());

可能存在一个小问题,因为您不是在数组上迭代,而是在对象上迭代。然而,最终代码是相似的

const rapidjson::Value& membersObject = e_doc["members"];
for(rapidjson::Value::ConstMemberIterator it=membersObject.MemberBegin(); it != membersObject.MemberEnd(); it++) {
   std::cout << it->value["template"].GetString();
}
const rapidjson::Value&membersObject=e_doc[“members”];
对于(rapidjson::Value::ConstMemberIterator it=membersObject.MemberBegin();it!=membersObject.MemberEnd();it++){
std::cout value[“模板”].GetString();
}

您必须演示如何将整数转换为字符串。