Namespaces
Variants

std:: in_place, std:: in_place_type, std:: in_place_index, std:: in_place_t, std:: in_place_type_t, std:: in_place_index_t

From cppreference.net
Utilities library
Определено в заголовочном файле <utility>
struct in_place_t { explicit in_place_t ( ) = default ; } ;
(1) (начиная с C++17)
inline constexpr std :: in_place_t in_place { } ;
(2) (начиная с C++17)
template < class T >
struct in_place_type_t { explicit in_place_type_t ( ) = default ; } ;
(3) (начиная с C++17)
template < class T >
constexpr std :: in_place_type_t < T > in_place_type { } ;
(4) (начиная с C++17)
template < std:: size_t I >
struct in_place_index_t { explicit in_place_index_t ( ) = default ; } ;
(5) (начиная с C++17)
template < std:: size_t I >
constexpr std :: in_place_index_t < I > in_place_index { } ;
(6) (начиная с C++17)
1,3,5) Типы/шаблоны типов std::in_place_t , std::in_place_type_t и std::in_place_index_t могут использоваться в списке параметров конструктора для соответствия целевому тегу.
2,4,6) Соответствующие экземпляры std::in_place , std::in_place_type и std::in_place_index из (1,3,5) являются тегами устранения неоднозначности, которые могут быть переданы в конструкторы для указания, что содержащийся объект должен быть сконструирован на месте, и (для последних двух) тип объекта, который должен быть сконструирован.

Стандартная библиотека

Следующие типы стандартной библиотеки используют (1-6) в качестве тегов устранения неоднозначности:

(C++17)
объекты, содержащие экземпляры любого CopyConstructible типа
(класс)
(C++23)
обёртка, содержащая либо ожидаемое, либо ошибочное значение
(шаблон класса)
перемещаемая обёртка любого вызываемого объекта, поддерживающая квалификаторы в заданной сигнатуре вызова
(шаблон класса)
(C++17)
обёртка, которая может содержать или не содержать объект
(шаблон класса)
(C++17)
типобезопасное размеченное объединение
(шаблон класса)

Смотрите также

указывает, что элементы диапазона отсортированы и уникальны
(тег)
указывает, что элементы диапазона отсортированы (уникальность не требуется)
(тег)