std::in_place_t

From cppreference.com
< cpp‎ | utility‎ | optional
 
 
 
 
Defined in header <optional>
struct in_place_t {};
(since C++17)

std::in_place_t is an empty class type used to disambiguate the overloads of constructors and member functions of that take arguments (possibly a parameter pack) for in-place construction of some value.

See also

in-place construction tag
(class template)
(since C++17)
a wrapper that may or may not hold an object
(class template)