mirror of
https://github.com/nlohmann/json.git
synced 2024-08-21 04:22:28 +02:00
9b32f72584
As I learned in https://github.com/melpon/wandbox/issues/209, this library is already installed at Wandbox, so we need to adjust the examples to use `#include "json.hpp"` insteas of `#include <json.hpp>`.
43 lines
854 B
C++
43 lines
854 B
C++
#include "json.hpp"
|
|
|
|
using json = nlohmann::json;
|
|
|
|
int main()
|
|
{
|
|
// create JSON array
|
|
json array = {"first", "2nd", "third", "fourth"};
|
|
|
|
// output element at index 2 (third element)
|
|
std::cout << array.at(2) << '\n';
|
|
|
|
// change element at index 1 (second element) to "second"
|
|
array.at(1) = "second";
|
|
|
|
// output changed array
|
|
std::cout << array << '\n';
|
|
|
|
|
|
// exception type_error.304
|
|
try
|
|
{
|
|
// use at() on a non-array type
|
|
json str = "I am a string";
|
|
str.at(0) = "Another string";
|
|
}
|
|
catch (json::type_error& e)
|
|
{
|
|
std::cout << e.what() << '\n';
|
|
}
|
|
|
|
// exception out_of_range.401
|
|
try
|
|
{
|
|
// try to write beyond the array limit
|
|
array.at(5) = "sixth";
|
|
}
|
|
catch (json::out_of_range& e)
|
|
{
|
|
std::cout << e.what() << '\n';
|
|
}
|
|
}
|