if
(doc.HasParseError())
//
CCLOG("%s ---> rapidjson parse error!!! %s\n", __FUNCTION__, doc.GetParseError());
return
;
rapidjson::Value
& val_status = doc[
"
data
"
][
"
status
"
];
if
(val_status.IsInt())
log(
"
====== val_data_status: %d
"
, val_status.GetInt
层级太多,提现提取用的比较多的某一层级,减少不必要的上层节点的重复获取,这里节点L需要被多次访问,所以提前把L提取出来,方便之后L内部对象的提取,运算效率上没想太多,应该没有啥区别,rapidjson内部不会傻到用数组遍历
rapidjson::Value& val_L = doc["data"]["result"]["L"];
rapidjson::Value& val_index1 = val_L["index1"];
rapidjson::Value& val_index2 = val_L["index2"];
int index1 = val_index1.IsInt() ? val_index1.GetInt() : 0;
int index2 = val_index2.IsInt() ? val_index2.GetInt() : 0;