std::function_ref
| (1) <functional>
|
||
template< class... >
class function_ref; // not defined
|
(depuis C++26) | (2) |
template< class R, class... Args >
class function_ref<R(Args...)>;
template< class R, class... Args >
class function_ref<R(Args...) noexcept>;
template< class R, class... Args >
class function_ref<R(Args...) const>;
template< class R, class... Args >
class function_ref<R(Args...) const noexcept>;
|
(depuis C++26) | Le modèle de classe |
est une enveloppe de fonction non propriétaire. std::function_ref Les objets std::function_ref peuvent stocker et invoquer une référence à une cible Appelable - fonctions, expressions lambda, expressions bind, ou autres objets fonction, mais pas les pointeurs vers des fonctions membres ni les pointeurs vers des données membres. std::nontype peut être utilisé pour construire std::function_ref en passant des pointeurs de fonction, des pointeurs vers des fonctions membres et des pointeurs vers des données membres.
std::function_refs supporte toutes les combinaisons possibles de qualifications cv (à l'exclusion de volatile), et de spécificateurs noexcept fournis dans son paramètre template.
Chaque spécialisation de std::function_ref est un type TriviallyCopyable qui satisfait copiable.
Types membres
| Membre | Définition |
BoundEntityType
(privé)
|
type non spécifié
TriviallyCopyable
qui satisfait
copyable
et est capable de stocker un pointeur vers une valeur d'objet ou un pointeur vers une valeur de fonction
( type de membre d'exposition uniquement* ) |
FunctionPointerType
(privé)
|
R
(
*
)
(
BoundEntityType
, Args
&&
...
)
noexcept
(
noex
)
où
noex
est
true
si
noexcept
est présent dans la signature de fonction en tant que partie du paramètre template de
|
Membres de données
| Membre | Définition |
BoundEntityType
bound-entity
|
un objet d'entité liée
( objet membre d'exposition uniquement* ) |
FunctionPointerType
thunk-ptr
|
un pointeur de fonction stocké
( objet membre d'exposition uniquement* ) |
Fonctions membres
construit un nouvel objet
function_ref
(fonction membre publique) |
|
assigne un
function_ref
(fonction membre publique) |
|
invoque le thunk stocké d'un
function_ref
(fonction membre publique) |
Guides de déduction
Notes
| Macro de test de fonctionnalité | Valeur | Std | Fonctionnalité |
|---|---|---|---|
__cpp_lib_function_ref
|
202306L
|
(C++26) |
std::function_ref
|
Exemple
|
Cette section est incomplète
Raison : exemple |
Voir aussi
|
(C++11)
|
enveloppe copiable de tout objet appelable copiable
(modèle de classe) |
|
(C++26)
|
enveloppe copiable de tout objet appelable copiable qui prend en charge les qualificateurs dans une signature d'appel donnée
(modèle de classe) |
|
(C++23)
|
enveloppe non copiable de tout objet appelable qui prend en charge les qualificateurs dans une signature d'appel donnée
(modèle de classe) |
|
(C++26)
|
étiquette de construction de valeur
(étiquette) |