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, template< typename T, typename SFINAE=void > class JSONSerializer = adl_serializer>
Move constructor. Constructs a JSON value with the contents of the given value other using move semantics. It "steals" the resources from other and leaves it as JSON null value.
- Parameters
-
[in,out] | other | value to move to this object |
- Postcondition
*this
has the same value as other before the call.
-
other is a JSON null value.
- Complexity^^ Constant.
- Exception safety^^ No-throw guarantee: this constructor never throws
- exceptions.
- Requirements^^ This function helps basic_json satisfying the
- MoveConstructible requirements.
- Example^^ The code below shows the move constructor explicitly called
- via std::move. ^^
2 #include <nlohmann/json.hpp> 15 std::cout << a <<
'\n';
16 std::cout << b <<
'\n';
basic_json<> json
default JSON class
Output (play with this example online):^^ null
23
^^ The example code above can be translated withg++ -std=c++11 -Isingle_include doc/examples/basic_json__moveconstructor.cpp -o basic_json__moveconstructor
- Since
- version 1.0.0
Definition at line 14219 of file json.hpp.