Я задал этот вопрос, и ответ отлично работал для обычных (не вложенных) объектов:
[
{
"Name": "test",
"Val": "test_val"
},
{
"Name": "test2",
"Val": "test_val2"
}
]
со структурой:
struct Test {
string Name;
string Val;
};
Однако, когда я попытался использовать вложенные структуры, вот так:
struct Inner {
string Name;
string Value;
};
struct Outer {
string Display;
int ID;
Inner Nested
};
//with json
"
[
{
"Display": "abcd",
"ID": 100,
"Nested": {
"Name": "Test Name",
"Value": "Test Value"
}
}
]
"
Это дало мне эту ошибку:
In function 'void from_json(const json&, Outer&)':
parser/run.cc:16:41: error: no matching function for call to 'nlohmann::basic_json<>::get_to(std::vector<Inner>&) const'
j.at("Inner").get_to(p.Inner);