我一直在 boost::property_tree(用于读取 json)中寻找 API,可用于确定字段的值是树还是终端值。例如,我有一个 json,其中 foo 的值可以是第一个块中所示的树,也可以是第二个块中所示的字符串。
{
"foo": {
" n1": "v1",
"n2": "v2"
}
}
{
"foo": "bar"
}
我知道我们可以先检查 get_child_optional。如果返回值为null,那么我们可以检查get_optional。但是有没有更好的方法/api来做到这一点?