json/doc/examples/get_ref.cpp

27 lines
545 B
C++
Raw Normal View History

#include <json.hpp>
using json = nlohmann::json;
int main()
{
// create a JSON number
json value = 17;
// explicitly getting references
auto r1 = value.get_ref<const json::number_integer_t&>();
auto r2 = value.get_ref<json::number_integer_t&>();
// print the values
std::cout << r1 << ' ' << r2 << '\n';
2016-01-20 20:14:58 +00:00
// incompatible type throws exception
try
{
auto r3 = value.get_ref<json::number_float_t&>();
}
2016-01-20 20:14:58 +00:00
catch (std::domain_error& ex)
{
std::cout << ex.what() << '\n';
}
}