json/doc/examples/get_ref.cpp

28 lines
564 B
C++
Raw Normal View History

#include <iostream>
#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-21 04:14:58 +08:00
// incompatible type throws exception
try
{
auto r3 = value.get_ref<json::number_float_t&>();
}
catch (json::type_error& ex)
{
std::cout << ex.what() << '\n';
}
}