试图找出一种通用的 JSON 值解析方法。
无错误检查:
myField = jsonValue["myField"].as_string();`
带错误检查:
if (jsonValue.is_null()) return false; if (!jsonValue.is_object()) return false; for (auto it = jsonValue.as_object().cbegin(); it != jsonValue.as_object().cend(); ++it) { const std::string& str = it->first; const json::value& v = it->second; if (str == "myField") { if (v.is_string()) { myField = v.as_string(); continue; } else { return false; } } }
代码量的差异是显而易见的。我应该打扰错误检查还是第一种方法就足够了?