1#include <iostream> 2#include <nlohmann/json.hpp> 3 4using json = nlohmann::json; 5 6namespace ns 7{ 8// a simple struct to model a person 9struct person 10{ 11 std::string name; 12 std::string address; 13 int age; 14}; 15} // namespace ns 16 17namespace ns 18{ 19void from_json(const json& j, person& p) 20{ 21 j.at("name").get_to(p.name); 22 j.at("address").get_to(p.address); 23 j.at("age").get_to(p.age); 24} 25} // namespace ns 26 27int main() 28{ 29 json j; 30 j["name"] = "Ned Flanders"; 31 j["address"] = "744 Evergreen Terrace"; 32 j["age"] = 60; 33 34 auto p = j.get<ns::person>(); 35 36 std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl; 37} 38