std::experimental::promise<R>:: promise (library fundamentals TS)
From cppreference.net
<
cpp
|
experimental
|
lib extensions
|
promise
|
promise
(
)
;
|
(1) | (library fundamentals TS) |
|
template
<
class
Alloc
>
promise ( std:: allocator_arg_t , const Alloc & alloc ) ; |
(2) | (library fundamentals TS) |
|
promise
(
promise
&&
other
)
noexcept
;
|
(3) | (library fundamentals TS) |
|
promise
(
const
promise
&
other
)
=
delete
;
|
(4) | (library fundamentals TS) |
Construit un objet
std::experimental::promise
.
1)
Constructeur par défaut. Construit la promesse avec un état partagé vide.
2)
Construit la promesse avec un état partagé vide. L'état partagé est alloué en utilisant
alloc
, qui est traité comme un allocateur à type effacé (voir ci-dessous).
3)
Constructeur de déplacement. Construit la promesse avec l'état partagé de
other
en utilisant la sémantique de déplacement. Après la construction,
other
n'a plus d'état partagé.
4)
std::experimental::promise
n'est pas copiable.
Allocateur à effacement de type
Les constructeurs de
promise
prenant un argument d'allocateur
alloc
traitent cet argument comme un allocateur à effacement de type. Le pointeur de ressource mémoire utilisé par
promise
pour allouer de la mémoire est déterminé en utilisant l'argument d'allocateur (s'il est spécifié) comme suit :
Type de
alloc
|
Valeur du pointeur de ressource mémoire |
| Inexistant (aucun allocateur spécifié au moment de la construction) | La valeur de std:: experimental :: pmr :: get_default_resource ( ) au moment de la construction. |
| std::nullptr_t | La valeur de std:: experimental :: pmr :: get_default_resource ( ) au moment de la construction. |
|
Un type pointeur convertible en
std:: experimental :: pmr :: memory_resource * |
static_cast < std:: experimental :: pmr :: memory_resource * > ( alloc ) |
|
Une spécialisation de
std::experimental::pmr::polymorphic_allocator |
alloc. resource ( ) |
| Tout autre type satisfaisant aux exigences Allocator |
Un pointeur vers une valeur de type
std::
experimental
::
pmr
::
resource_adaptor
<
A
>
(
alloc
)
, où
A
est le type de
alloc
. Le pointeur reste valide uniquement pendant la durée de vie de l'objet
promise
.
|
| Aucun des cas ci-dessus | Le programme est mal formé. |
Paramètres
| alloc | - | allocateur à utiliser pour allouer l'état partagé |
| other | - |
autre
std::experimental::promise
dont acquérir l'état
|
Exceptions
1,2)
(aucun)