|
|
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 = int64_t, class NumberUnsignedType = uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
| void nlohmann::basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType >::clear |
( |
| ) |
|
|
inlinenoexcept |
Clears the content of a JSON value and resets it to the default value as if basic_json(value_t) would have been called:
| Value type | initial value |
| null | null |
| boolean | false |
| string | "" |
| number | 0 |
| object | {} |
| array | [] |
- Note
- Floating-point numbers are set to
0.0 which will be serialized to 0. The vale type remains number_float_t.
- Complexity
- Linear in the size of the JSON value.
- Example
- The example below shows the effect of clear to different JSON types.
10 json j_number_integer = 17; 11 json j_number_float = 23.42; 12 json j_object = {{ "one", 1}, { "two", 2}}; 13 json j_array = {1, 2, 4, 8, 16}; 14 json j_string = "Hello, world"; 19 j_number_integer. clear(); 20 j_number_float. clear(); 26 std::cout << j_null << '\n'; 27 std::cout << j_boolean << '\n'; 28 std::cout << j_number_integer << '\n'; 29 std::cout << j_number_float << '\n'; 30 std::cout << j_object << '\n'; 31 std::cout << j_array << '\n'; 32 std::cout << j_string << '\n'; void clear() noexcept clears the contents
a class to store JSON values
namespace for Niels Lohmann
Output (play with this example online): null
false
0
0.0
{}
[]
""
The example code above can be translated withg++ -std=c++11 -Isrc doc/examples/clear.cpp -o clear
- Since
- version 1.0.0
Definition at line 4451 of file json.hpp.
|