Namespaces
Variants

std::copyable_function::operator=

Desde 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 de tres vías
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilidades generales
Operadores relacionales (obsoleto en C++20)
 
Objetos función
Invocación de función
(C++17)(C++23)
Objeto función identidad
(C++20)
Envoltorios de operador transparentes
(C++14)
(C++14)
(C++14)
(C++14)  
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)
(C++14)

Binders y adaptadores antiguos
(hasta C++17*)
(hasta C++17*)
(hasta C++17*)
(hasta C++17*)  
(hasta C++17*)
(hasta C++17*)(hasta C++17*)(hasta C++17*)(hasta C++17*)
(hasta C++20*)
(hasta C++20*)
(hasta C++17*)(hasta C++17*)
(hasta C++17*)(hasta C++17*)

(hasta C++17*)
(hasta C++17*)(hasta C++17*)(hasta C++17*)(hasta C++17*)
(hasta C++20*)
(hasta C++20*)
 
 
copyable_function& operator=( const copyable_function& other );
(1) (desde C++26)
copyable_function& operator=( copyable_function&& other );
(2) (desde C++26)
copyable_function& operator=( std::nullptr_t ) noexcept;
(3) (desde C++26)
template< class F >
copyable_function& operator=( F&& f );
(4) (desde C++26)

Asigna un nuevo destino a std::copyable_function o destruye su destino.

1) Asigna una copia del destino de other a *this como si se ejecutara auto(other).swap(*this).
2) Mueve el destino de other a *this o destruye el destino de *this (si existe) si other está vacío, mediante auto(std::move(other)).swap(*this). other está en un estado válido con un valor no especificado después de la asignación por movimiento.
3) Destruye el destino actual si existe. *this está vacío después de la llamada.
4) Establece el destino de *this al invocable f, o destruye el destino actual si f es un puntero a función nulo, un puntero nulo a función miembro, o un std::copyable_function vacío, como si se ejecutara copyable_function(std::forward<F>(f)).swap(*this);. Esta sobrecarga participa en la resolución de sobrecarga solo si el constructor de copyable_function desde F participa en la resolución de sobrecarga. El programa está mal formado o tiene comportamiento indefinido si la llamada al constructor seleccionado está mal formada o tiene comportamiento indefinido.

Parámetros

other - otro objeto std::copyable_function para copiar o mover el objetivo de
f - un objeto invocable para inicializar el nuevo objetivo con

Valor de retorno

* this

Ejemplo

Véase también

asigna un nuevo objetivo
(función miembro pública de std::function<R(Args...)> )
reemplaza o destruye el objetivo
(función miembro pública de std::move_only_function )