Namespaces
Variants

std::copyable_function::operator=

Depuis fr.cppreference.net
 
 
Bibliothèque d'utilitaires
Support linguistique
Support de type (types de base, RTTI)
Macros de test des fonctionnalités de la bibliothèque (C++20)
Utilitaires de programme
Fonctions variadiques
Support des coroutines (C++20)
Support des contrats (C++26)
Comparaison à trois voies
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilitaires généraux
Opérateurs relationnels (obsolète en C++20)
 
Objets fonction
Invocation de fonction
(C++17)(C++23)
Objet fonction identité
(C++20)
Enveloppes d'opérateur 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)

Anciens adaptateurs et lieurs
(jusqu'à C++17*)
(jusqu'à C++17*)
(jusqu'à C++17*)
(jusqu'à C++17*)
(jusqu'à C++17*)  
(jusqu'à C++17*)
(jusqu'à C++17*)(jusqu'à C++17*)(jusqu'à C++17*)(jusqu'à C++17*)
(jusqu'à C++20*)
(jusqu'à C++20*)
(jusqu'à C++17*)(jusqu'à C++17*)
(jusqu'à C++17*)(jusqu'à C++17*)

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

Assigne une nouvelle cible à std::copyable_function ou détruit sa cible.

1) Assigne une copie de la cible de other à *this comme par l'exécution de auto(other).swap(*this).
2) Déplace la cible de other vers *this ou détruit la cible de *this (si elle existe) si other est vide, par auto(std::move(other)).swap(*this). other est dans un état valide avec une valeur non spécifiée après l'opérateur d'affectation de déplacement.
3) Détruit la cible actuelle si elle existe. *this est vide après l'appel.
4) Définit la cible de *this sur l'élément appelable f, ou détruit la cible actuelle si f est un pointeur de fonction nul, un pointeur nul vers une fonction membre, ou un std::copyable_function vide, comme par l'exécution de copyable_function(std::forward<F>(f)).swap(*this);. Cette surcharge participe à la résolution de surcharge uniquement si le constructeur de copyable_function à partir de F participe à la résolution de surcharge. Le programme est mal formé ou a un comportement indéfini si l'appel au constructeur sélectionné est mal formé ou a un comportement indéfini.

Paramètres

other - un autre objet std::copyable_function à copier ou déplacer la cible de
f - un objet appelable pour initialiser la nouvelle cible avec

Valeur de retour

* this

Exemple

Voir aussi

assigne une nouvelle cible
(fonction membre publique de std::function<R(Args...)> )
remplace ou détruit la cible
(fonction membre publique de std::move_only_function )