JSON for Modern C++  2.0.3

§ find() [2/2]

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > 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 U > class AllocatorType = std::allocator>
const_iterator nlohmann::basic_json::find ( typename object_t::key_type  key) const
inline

find an element in a JSON object Finds an element in a JSON object with key equivalent to key. If the element is not found or the JSON value is not an object, end() is returned.

Parameters
[in]keykey value of the element to search for
Returns
Iterator to an element with key equivalent to key. If no such element is found, past-the-end (see end()) iterator is returned.
Complexity
Logarithmic in the size of the JSON object.
Example
The example shows how find() is used.
1 #include <json.hpp>
2 
3 using json = nlohmann::json;
4 
5 int main()
6 {
7  // create a JSON object
8  json j_object = {{"one", 1}, {"two", 2}};
9 
10  // call find
11  auto it_two = j_object.find("two");
12  auto it_three = j_object.find("three");
13 
14  // print values
15  std::cout << std::boolalpha;
16  std::cout << "\"two\" was found: " << (it_two != j_object.end()) << '\n';
17  std::cout << "value at key \"two\": " << *it_two << '\n';
18  std::cout << "\"three\" was found: " << (it_three != j_object.end()) << '\n';
19 }
basic_json<> json
default JSON class
Definition: json.hpp:10122
Output (play with this example online):
"two" was found: true
value at key "two": 2
"three" was found: false
The example code above can be translated with
g++ -std=c++11 -Isrc doc/examples/find__key_type.cpp -o find__key_type 
Since
version 1.0.0

Definition at line 4227 of file json.hpp.