Namespaces
Variants

std::expected<T,E>::emplace

De es.cppreference.net
 
 
Biblioteca de utilidades
Soporte del lenguaje
Soporte de tipos (tipos básicos, RTTI)
Macros de prueba de características de la biblioteca (C++20)
Utilidades de programa
Funciones variádicas
Soporte de corrutinas (C++20)
Soporte de contratos (C++26)
Comparación tripartita
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilidades generales
Operadores relacionales (obsoleto en C++20)
 
 
Plantilla primaria
template< class... Args >
constexpr T& emplace( Args&&... args ) noexcept;
(1) (desde C++23)
template< class U, class... Args >
constexpr T& emplace( std::initializer_list<U> il, Args&&... args ) noexcept;
(2) (desde C++23)
void especialización parcial
constexpr void emplace() noexcept;
(3) (desde C++23)

Construye un valor esperado in situ. Después de la llamada, has_value() devuelve true.

1) Destruye el valor contenido, luego inicializa directamente el valor esperado contenido en *this con std::forward<Args>(args)....
Esta sobrecarga participa en la resolución de sobrecarga solo si std::is_nothrow_constructible_v<T, Args...> es true.
2) Destruye el valor contenido, luego inicializa directamente el valor esperado contenido en *this con il y std::forward<Args>(args)....
Esta sobrecarga participa en la resolución de sobrecarga solo si std::is_nothrow_constructible_v<T, std::initializer_list<U>&, Args...> es true.
3) Si *this contiene un valor inesperado, destruye ese valor.

Parámetros

args - los argumentos a pasar al constructor
il - la lista de inicializadores a pasar al constructor

Valor de retorno

2) * std:: construct_at ( std:: addressof ( val ) , il, std:: forward < Args > ( args ) ... )

Notas

Si la construcción de T es potencialmente lanzadora de excepciones, operator= puede ser utilizado en su lugar.

Ejemplo

Véase también

asigna contenidos
(función miembro pública)