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
|
在标头
<utility>
定义
|
||
|
struct
in_place_t {
explicit
in_place_t()
=
default; |
(C++17 起) | |
|
template
<class
T>
struct
in_place_type_t {
explicit
in_place_type_t()
=
default; |
(C++17 起) | |
|
template
<std::size_t
I>
struct
in_place_index_t {
explicit
in_place_index_t()
=
default; |
(C++17 起) | |
std::in_place 、 std::in_place_type 和
std::in_place_index 是消歧义标签,能传递给 std::optional 、
std::variant 和
std::any
的构造函数,以指示应该原位构造对象,以及(对于后二者)要构造的对象的类型。
对应的类型/类型模板 std::in_place_t 、 std::in_place_type_t 和
std::in_place_index_t 能用于构造函数的参数列表中,以匹配有意的标签。
参阅
|
(C++17)
|
可能或可能不保有一个对象的包装器 (类模板) |
|
(C++17)
|
类型安全的可辨识联合体 (类模板) |
|
(C++17)
|
可保有任何可复制构造
(CopyConstructible)
类型的实例的对象。 (类) |