1c5f01b2fSopenharmony_ci#include <iostream> 2c5f01b2fSopenharmony_ci#include <nlohmann/json.hpp> 3c5f01b2fSopenharmony_ci 4c5f01b2fSopenharmony_ciusing json = nlohmann::json; 5c5f01b2fSopenharmony_ci 6c5f01b2fSopenharmony_cinamespace ns 7c5f01b2fSopenharmony_ci{ 8c5f01b2fSopenharmony_ci// a simple struct to model a person 9c5f01b2fSopenharmony_cistruct person 10c5f01b2fSopenharmony_ci{ 11c5f01b2fSopenharmony_ci std::string name; 12c5f01b2fSopenharmony_ci std::string address; 13c5f01b2fSopenharmony_ci int age; 14c5f01b2fSopenharmony_ci}; 15c5f01b2fSopenharmony_ci} // namespace ns 16c5f01b2fSopenharmony_ci 17c5f01b2fSopenharmony_cinamespace ns 18c5f01b2fSopenharmony_ci{ 19c5f01b2fSopenharmony_civoid to_json(json& j, const person& p) 20c5f01b2fSopenharmony_ci{ 21c5f01b2fSopenharmony_ci j = json{ {"name", p.name}, {"address", p.address}, {"age", p.age} }; 22c5f01b2fSopenharmony_ci} 23c5f01b2fSopenharmony_ci} // namespace ns 24c5f01b2fSopenharmony_ci 25c5f01b2fSopenharmony_ciint main() 26c5f01b2fSopenharmony_ci{ 27c5f01b2fSopenharmony_ci ns::person p = {"Ned Flanders", "744 Evergreen Terrace", 60}; 28c5f01b2fSopenharmony_ci 29c5f01b2fSopenharmony_ci json j = p; 30c5f01b2fSopenharmony_ci 31c5f01b2fSopenharmony_ci std::cout << j << std::endl; 32c5f01b2fSopenharmony_ci} 33