我有一个接收 aJson::Value作为参数的外部库。然后它会输出一个包含 JSON 结构的字符串,我Json::Value在该结构中的某处传递。
我正在尝试使用JsonCpp{}在其中放置一个空对象。Json::Value
最终,我试图从std::string包含"{}"的Json::Value.
当我声明 aJson::Value并且什么都不做并将它传递给我的图书馆时,我得到NULL而不是{}......
小智 5
样本:
Json::Value root;
Json::Reader reader;
reader.parse("{}", root);
assert(root != Json::nullValue);
std::string someStr = Json::FastWriter().write(root);
assert(someStr == "{}\n");
Run Code Online (Sandbox Code Playgroud)
所有断言都通过,因此解析的对象没有空值,当您将其写回字符串时,您会得到空对象"{}"。这对你不起作用吗?
小智 5
它可能对某人有帮助:在当前版本中。我正在使用 - 1.8.2,你可以得到这样的空对象:
Json::Value root;
root = Json::objectValue;
Run Code Online (Sandbox Code Playgroud)