std:: function_ref
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Old binders and adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Défini dans l'en-tête
<functional>
|
||
|
template
<
class
...
>
class function_ref ; // non défini |
(1) | (depuis C++26) |
|
template
<
class
R,
class
...
Args
>
class
function_ref
<
R
(
Args...
)
>
;
|
(2) | (depuis C++26) |
Le modèle de classe
std::function_ref
est un wrapper de fonction non propriétaire.
Les objets
std::function_ref
peuvent stocker et invoquer une référence à une
Callable
cible
- fonctions,
expressions lambda
,
expressions de liaison
, ou autres objets fonction, mais pas les pointeurs vers les fonctions membres et les pointeurs vers les objets membres.
std::
nontype
peut être utilisé pour construire
std::function_ref
en passant des pointeurs de fonction, des pointeurs vers les fonctions membres et des pointeurs vers les objets membres.
std::function_ref
prend en charge toutes les combinaisons possibles de
cv-qualifiers
(à l'exception de
volatile
), et de
noexcept-specifiers
fournies dans son paramètre template.
Chaque spécialisation de
std::function_ref
est un type
TriviallyCopyable
qui satisfait
copyable
.
Table des matières |
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) |