gpt4 book ai didi

c++ - nlohmann json 库将数组转换为结构 vector

转载 作者:行者123 更新时间:2023-12-01 14:43:23 33 4
gpt4 key购买 nike

假设我有一个如下所示的 json 数组:

[
{
"Name": "test",
"Val": "test_val"
},
{
"Name": "test2",
"Val": "test_val2"
}
]

我想将其转换为结构 vector :
struct Test {
string Name;
string Val;
};

我知道 json.get<>()方法,但不知道如何将其应用于此。

最佳答案

用于自动get<>要工作,您需要提供 JSON 和您的结构之间的映射:

void from_json(const nlohmann::json& j, Test& p) {
j.at("Name").get_to(p.Name);
j.at("Val").get_to(p.Val);
}

然后它将按预期工作。

auto parsed = json.get<std::vector<Test>>();

演示: https://godbolt.org/z/9P1mjO

关于c++ - nlohmann json 库将数组转换为结构 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60325894/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com