JSON for Modern C++  3.0.0

◆ rend() [2/2]

template<template< typename, typename, typename... > class ObjectType = std::map, template< typename, typename... > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename > class AllocatorType = std::allocator, template< typename, typename=void > class JSONSerializer = adl_serializer>
const_reverse_iterator nlohmann::basic_json::rend ( ) const
inlinenoexcept

Returns a const reverse iterator to the reverse-end; that is, one before the first element.

range-rbegin-rend.svg
Illustration from cppreference.com
Complexity
Constant.
Requirements
This function helps basic_json satisfying the ReversibleContainer requirements:
  • The complexity is constant.
  • Has the semantics of const_cast<const basic_json&>(*this).rend().
Example
The following code shows an example for crend().
1 #include <iostream>
2 #include "json.hpp"
3 
4 using json = nlohmann::json;
5 
6 int main()
7 {
8  // create an array value
9  json array = {1, 2, 3, 4, 5};
10 
11  // get an iterator to the reverse-end
12  json::const_reverse_iterator it = array.crend();
13 
14  // increment the iterator to point to the first element
15  --it;
16 
17  // serialize the element that the iterator points to
18  std::cout << *it << '\n';
19 }
basic_json<> json
default JSON class
Definition: json.hpp:14348
json_reverse_iterator< typename basic_json::const_iterator > const_reverse_iterator
a const reverse iterator for a basic_json container
Definition: json.hpp:7459
Output (play with this example online):
1
The example code above can be translated with
g++ -std=c++11 -Isrc doc/examples/crend.cpp -o crend 
See also
rend() – returns a reverse iterator to the end
rbegin() – returns a reverse iterator to the beginning
crbegin() – returns a const reverse iterator to the beginning
Since
version 1.0.0

Definition at line 11243 of file json.hpp.