nlohmann::basic_json::out_of_range¶
class out_of_range : public exception;
This exception is thrown in case a library function is called on an input parameter that exceeds the expected range, for instance in case of array indices or nonexisting object keys.
Exceptions have ids 4xx (see list of out-of-range errors).
Member functions¶
- what - returns explanatory string
Member variables¶
- id - the id of the exception
Examples¶
Example
The following code shows how a out_of_range
exception can be caught.
#include <iostream>
#include <nlohmann/json.hpp>
using json = nlohmann::json;
int main()
{
try
{
// calling at() for an invalid index
json j = {1, 2, 3, 4};
j.at(4) = 10;
}
catch (const json::out_of_range& e)
{
// output exception information
std::cout << "message: " << e.what() << '\n'
<< "exception id: " << e.id << std::endl;
}
}
Output:
message: [json.exception.out_of_range.401] array index 4 is out of range
exception id: 401
See also¶
- List of out-of-range errors
parse_error
for exceptions indicating a parse errorinvalid_iterator
for exceptions indicating errors with iteratorstype_error
for exceptions indicating executing a member function with a wrong typeother_error
for exceptions indicating other library errors
Version history¶
- Since version 3.0.0.
Last update: May 1, 2022