deduction guides for
std::function_ref
From cppreference.net
<
cpp
|
utility
|
functional
|
function ref
C++
Utilities library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Function objects
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Old binders and adaptors | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Défini dans l'en-tête
<functional>
|
||
|
template
<
class
F
>
function_ref ( F * ) - > function_ref < F > ; |
(1) | (depuis C++26) |
|
template
<
auto
f
>
function_ref ( std:: nontype_t < f > ) - > function_ref < /*voir ci-dessous*/ > ; |
(2) | (depuis C++26) |
|
template
<
auto
f,
class
T
>
function_ref ( std:: nontype_t < f > , T && ) - > function_ref < /*voir ci-dessous*/ > ; |
(3) | (depuis C++26) |
1)
Cette surcharge participe à la résolution de surcharge uniquement si
std::
is_function_v
<
F
>
est
true
.
2)
Soit le type
F
défini comme
std::
remove_pointer_t
<
decltype
(
f
)
>
. Cette surcharge participe à la résolution de surcharge seulement si
std::
is_function_v
<
F
>
est
true
. Le type déduit est
std::
function_ref
<
F
>
.
3)
Soit le type
F
défini comme
decltype
(
f
)
. Cette surcharge participe à la résolution de surcharge seulement si :
- F est de la forme R ( G :: * ) ( A... ) noexcept ( E ) (optionnellement qualifié cv, optionnellement noexcept, optionnellement qualifié référence lvalue) pour un type G , ou
- F est de la forme M G :: * pour un type G et un type objet M , auquel cas soit R défini comme std:: invoke_result_t < F, T & > , A... un pack vide, et E faux, ou
- F est de la forme R ( * ) ( G, A... ) noexcept ( E ) pour un type G .
-
- Le type déduit est std:: function_ref < R ( A... ) noexcept ( E ) > .
Exemple
|
Cette section est incomplète
Raison : aucun exemple |