我正在使用现代 C++ 的 json 解析器 Json ( https://github.com/nlohmann/json )。我知道我可以使用 JSON_Pointer 获取 JSON 值的值:
auto v1 = j["/a/b/c"_json_pointer];
但是,如果 JSON 指针是在运行时定义的(传递到我的函数中),我将如何获取值?
std:string s1 = "/a/b/c";
auto v1 = j[s1]; // doesn't work
您不能将“json_pointer”附加到 std::string 分配或 s1 变量。是否有将 std::string 转换为 json_pointer 的函数?调用者对 json 一无所知,无法访问“json.hpp”标头。我也试过
std::string s1 = "/a/b/c";
json_pointer p1(s1);
但“json_pointer”类未定义。除了这个问题,这是一个很棒的库,可以做我需要的一切。TIA。