Skip to content

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.

uml diagram

Member functions

  • what - returns explanatory string

Member variables

  • id - the id of the exception

Example

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 (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

Version history

  • Since version 3.0.0.