可以使用nlohmann::json
几个不同的表达式来解析对象:
type x = json;
type x; x = json.get<type>();
但是,type x; x = json;
不起作用,因为这需要为type
.
我发现自己需要比表达式 (1) 更频繁地使用表达式 (2)。这可能会很烦人,尤其是在type
复杂的情况下。在少数情况下,我定义
template <typename U>
void convert(const json& j, U& x) { x = j.get<U>(); }
get
但是,如果有一个将引用作为参数的重载,那就太好了,这样就可以实现以下操作。
type x;
json.get(x);
是否已经有一个功能可以做到这一点,只是名称不同?我在文档中找不到。
编辑:我已经在 GitHub 上提交了一个问题。
编辑 2 : 3.3.0 版中将包含该get
功能的替代方案。T& get_to(T&)